gpt4 book ai didi

postgresql - pg_restore 工作正常但有一些错误

转载 作者:行者123 更新时间:2023-11-29 13:20:19 26 4
gpt4 key购买 nike

我正在测试我的备份/恢复过程,当我恢复数据库时,所有表以及数据和表所有权都是正确的。但是,我担心一些警告/错误。

我的备份是使用 postgres crontab 在 cronjob 中运行的。然而,postgres cronjob 中的 pg_dump 命令是使用“myuser”用户运行的:

00 01 * * * pg_dump -U myuser -Fc --exclude-table-data=example_table example_db > ~/backups/example_db_backup.gz

如您所见,我在备份期间排除了其中一个表中的数据。所有其他表等都正常备份。

然后我用 postgres 用户创建一个新的测试数据库,因为我不想将它恢复到实时数据库。我授予“myuser”用户对新数据库的完全访问权限,然后恢复数据库:

su postgres
psql -U postgres
create database test;
GRANT ALL PRIVILEGES ON DATABASE test TO myuser;
\q

然后我按如下方式恢复数据库:

pg_restore -d test -U myuser ~/backups/example_db_backup.gz

如前所述,还原工作正常并且数据库中的所有内容似乎都是正确的,但是在还原过程中我收到以下消息:

pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 2655; 0 0 COMMENT EXTENSION plpgsql
pg_restore: [archiver (db)] could not execute query: ERROR: must be owner of extension plpgsql
Command was: COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';

pg_restore: WARNING: no privileges could be revoked for "public"
pg_restore: WARNING: no privileges could be revoked for "public"
pg_restore: WARNING: no privileges were granted for "public"
pg_restore: WARNING: no privileges were granted for "public"
WARNING: errors ignored on restore: 1

这些错误值得关注吗?尽管恢复似乎工作正常,但我不想忽视我不了解的潜在问题。

最佳答案

我在加载 sql 转储文件时遇到了同样的错误,

postgres=# alter role <user-name> superuser;

为您的postgres 用户提供 super 用户 角色,

关于postgresql - pg_restore 工作正常但有一些错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43142532/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com