|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
“数据行级锁定”的意思是指在事务操作的执行过程中锁定正在被处理的个别记录,不让其他用户进行访问。这种锁定将影响到(但不限于)SELECT、LOCKINSHAREMODE、SELECT、FORUPDATE命令以及INSERT、UPDATE和DELETE命令。优化
客岁做了一个信息类网站,因为事先数据量不是很年夜,以是SQL语句写的很任意,没做甚么优化,
数据库也没做甚么索引,由于在不妥时数据量很少,以是也看不出来甚么,但厥后,跟着数据库的增添,
显现入手下手愈来愈慢,当数据到达三百多万时,就常常呈现没法会见的毛病了,我觉得是数据库的功能有成绩。因而对数据库举行了优化(调最小内存占用,和最年夜内存),事先有一些效果,固然会见仍是慢,但最少不堕落了。厥后到数据到达400多万时,又呈现不克不及会见的毛病了,因而,我决意对SQL语句及程序举行优化和创建索引。
起首是创建索引,由于经由实验,我发明慢的中央次要是由于有排序,以是决意对排序字段UPDATETIME
创建一个聚簇索引,注:由于UPDATETIME,在一天中的信息,是不异的,以是合适创建聚簇索引。
创建聚簇索引后,速率有必定的进步,但仍是感到有些慢。
然后又入手下手对程序举行改革,起首是把不必要的查询,和排序往失落,然后是对必要排序的中央只管利用UPDATETIME,如许速率就进步很多了。
最初在SQL查询中,不利用*,而是器具体的字段来取代它,如许速率就能够到达基础的请求了。
呆板设置:RAM:256CPU:2.4(一个)HARDDISK:SCSI36GDELLSQLSERVER2000
以上只是我团体的一些看法,请妙手斧正一下哦。
由于我只是复杂的进修了一下SQL言语。
对于update操作,只需要把event中的旧行和新行值对调即可。 |
|