首页 > 解决方案 > 启用约束 - 性能影响

问题描述

对于包含 7000 万条记录的表,以下语句会消耗大量时间。

ALTER TABLE <table-name>  ENABLE CONSTRAINT <constraint-name>

启用约束时表是否扫描所有行。

即使启用了约束,该过程也只挂了 5 个多小时。

关于如何优化的任何想法

标签: oracleoracle11gddldatabase-administration

解决方案


正如人们之前所说,取决于约束类型,有可能通过 ALTER TABLE ENABLE NOVALIDATE CONSTRAINT 跳过验证现有数据。并通过一些额外的程序或查询来检查这些数据。

您可以在此处找到相关文档https://docs.oracle.com/cd/B28359_01/server.111/b28310/general005.htm#ADMIN11546


推荐阅读