测试PostgreSQL过程中,无法自动执行索引创建、外键约束创建的解决方法
问题现象描述
测试PostgreSQL过程中,在初始化过程中加载数据时,提示“there is no unique constraint matching given keys for referenced table”。
关键过程、根本原因分析
runDatabaseBuild.sh文件中,默认注释掉第17行AFTER LOAD-"indexCreates foreignKeys buildFinish",即禁止在数据加载完成后自动执行索引创建、外键约束创建等操作。如果需要在数据加载完成后执行这些操作,需要将这行注释取消掉。同时注释掉第18行AFTER LOAD-"foreignKeys buildFinish",以禁止构建外键关系。
结论、解决方案及效果
可以通过修改runDatabaseBuild.sh文件来解决该问题:
- 打开runDatabaseBuild.sh文件。
1
vim /home/benchmarksql5.0-for-postgresql/run/runDatabaseBuild.sh
- 按“i”进入编辑模式,将文件中的第17行前面的#号删除,并在第18行信息前面加上#号以注释掉该行内容。修改后如下图所示:
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
父主题: 故障排除