Gab*_*lla 8 postgresql pg-restore
DB-B
我正在使用数据库 ( ) 的副本( DB-A
),我通过每天运行来保持最新状态:
pg_restore -U postgres -d someDB --clean -j 2 -L WhatToImportList admin.dump
Run Code Online (Sandbox Code Playgroud)
但我开始注意到DB-B
表中存在重复记录。经过进一步调查,似乎--clean
没有将表删除,DB-B
因为它需要对 my 中DB-B
但不在 origin 中的其他表和视图进行级联删除DB-A
。
DB-A
如果不是,那么什么是一个好的复制策略,我可以从中导入数据,DB-B
但保留分析所需的所有函数、视图和表DB-B
?谢谢。
编辑:可能的解决方法:截断每个表,然后导入它们...但我必须在脚本中包含每个表。
Edit2:为了帮助未来的读者,这样可以生成所有必须截断的表的列表:
SELECT 'TRUNCATE ' || table_name || ';'
FROM information_schema.tables
WHERE table_schema='my_schema'
AND table_type='BASE TABLE';
Run Code Online (Sandbox Code Playgroud)