作为Chef 12迁移的一部分,需要备份现有服务器并在新创建的Chef 12服务器中恢复它。 使用chef-server-ctl in-build commands“备份”和“恢复”。
在将Postgres数据库转储恢复到新的Chef服务器时,执行会引发多组错误。
请查找日志片段,显示错误
....
....
ERROR: role "bifrost" already exists
ALTER ROLE
ERROR: role "bifrost_ro" already exists
ALTER ROLE
....
....
ERROR: database "opscode-pgsql" already exists
....
....
ERROR: type "auth_any_permission" already exists
ALTER TYPE
ERROR: type "auth_permission" already exists
ALTER TYPE
....
....
ERROR: function "group_id" already exists with same argument types
ALTER FUNCTION
ERROR: function "groups_for_actor" already exists with same argument types
ALTER FUNCTION
....
....
ERROR: relation "object_acl_group" already exists
ALTER TABLE
....
ALTER TABLE
ERROR: duplicate key value violates unique constraint "actor_acl_actor_pkey"
DETAIL: Key (target, authorizee, permission)=(1, 1, create) already exists.
CONTEXT: COPY actor_acl_actor, line 1
.....
等等。
请澄清,这些错误是否可以安全地忽略?
如果没有,如何为成功的postgres数据库恢复解决这些错误?
答案 0 :(得分:2)
您正尝试在现有Chef数据库架构的基础上进行恢复,这意味着已存在所有角色和架构对象。要么还原到空白数据库,要么使用pg_restore --clean
。