今天把oracle数据库中外键禁用后,然后再重启。登入系统感觉快了很多。不知道什么原因,那位哥知道解释呗。
在海量的数据库中想都不要去想外键,试想,一个程序每天要insert数百万条记录,当存在外键约束的时候,每次要去扫描此记录是否合格,一般还不止一个字段有外键,这样扫描的数量是成级数的增长!我的一个程序入库在3个小时做完,如果加上外键,需要28个小时!
看这个吧:http://blog.knowsky.com/132531.htm
谢谢!我的意思是说先把外键禁用了,然后又开启外键了,等于查询的时候还是有外键的,就郁闷在这。
禁用、开启外键的同时,系统后台会对相关索引进行重新分析,有可能你的数据库很长时间不调优了。
你重复操作几次之后就会发现,登录时间差不多了。