oracle - 启用约束 - 性能影响
问题描述
对于包含 7000 万条记录的表,以下语句会消耗大量时间。
ALTER TABLE <table-name> ENABLE CONSTRAINT <constraint-name>
启用约束时表是否扫描所有行。
即使启用了约束,该过程也只挂了 5 个多小时。
关于如何优化的任何想法
解决方案
正如人们之前所说,取决于约束类型,有可能通过 ALTER TABLE ENABLE NOVALIDATE CONSTRAINT 跳过验证现有数据。并通过一些额外的程序或查询来检查这些数据。
您可以在此处找到相关文档https://docs.oracle.com/cd/B28359_01/server.111/b28310/general005.htm#ADMIN11546
推荐阅读
- flask - Jinja 创建 /n(下一行)功能
- redis - 命令级别的生菜超时
- .net-core - 如何在 web dto 架构内的 swagger ui 中显示自定义验证属性
- python - 试图在谷歌云中查找已部署 python 函数的当前项目 ID 会出错
- amazon-web-services - 使用 Step Function 在不同的帐户中运行 Glue 作业
- c++ - I cant get the right result from my code, getting odd outputs
- c# - 使用 LINQ 反转和展平字典
- sql - Toad for DB2 On Prem 到 On Cloud - 组执行 - 减去查询 - 错误 SQL0206N
- azure - 设备登录后 kubectl 返回错误 您必须登录到服务器(未经授权)
- angular - 模块在 Angular 中没有导出成员“CanActivate”