首页 新闻 会员 周边 捐助

Oracle的效率

0
悬赏园豆:5 [已解决问题] 解决于 2014-09-13 10:28

今天把oracle数据库中外键禁用后,然后再重启。登入系统感觉快了很多。不知道什么原因,那位哥知道解释呗。

天羽星河落的主页 天羽星河落 | 初学一级 | 园豆:188
提问于:2014-07-02 11:51
< >
分享
最佳答案
0

在海量的数据库中想都不要去想外键,试想,一个程序每天要insert数百万条记录,当存在外键约束的时候,每次要去扫描此记录是否合格,一般还不止一个字段有外键,这样扫描的数量是成级数的增长!我的一个程序入库在3个小时做完,如果加上外键,需要28个小时!  

看这个吧:http://blog.knowsky.com/132531.htm

收获园豆:3
Alex_QY1987 | 小虾三级 |园豆:1888 | 2014-07-04 09:53

谢谢!我的意思是说先把外键禁用了,然后又开启外键了,等于查询的时候还是有外键的,就郁闷在这。

天羽星河落 | 园豆:188 (初学一级) | 2014-07-04 10:33
其他回答(1)
0

禁用、开启外键的同时,系统后台会对相关索引进行重新分析,有可能你的数据库很长时间不调优了。

 

你重复操作几次之后就会发现,登录时间差不多了。

收获园豆:2
bitbug | 园豆:470 (菜鸟二级) | 2014-09-09 16:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册