我正在尝试备份 TimescaleDB 数据库,不包括两个非常大的超级表。这意味着在备份运行时,我不会期望看到COPY底层块的任何命令,但我确实看到了!
假设TestDB我的数据库有两个mySchema名为hyper1和的大型超级表hyper2,以及其他普通表。
我运行以下命令:
pg_dump -U user -F t TestDB --exclude-table "mySchema.hyper1" --exclude-table "mySchema.hyper2" > TestDB_Backup.tar
Run Code Online (Sandbox Code Playgroud)
然后我检查正在运行的查询(尤其是因为我没想到它会花这么长时间),我发现对于我实际排除的表的每个块,有几个 COPY 命令正在运行。
这是TimescaleDB版本1.7.4。
你们中有人遇到过这种情况吗?这里到底发生了什么?
附:很抱歉,我无法真正为此提供重现,这更多的是讨论而不是实际的程序问题,但我仍然希望有人以前见过这个并可以告诉我我错过了什么:)