pg_dump
当我意识到必须更改数据库的所有者时,我正在使用命令导出数据库。所以我改变了它,并特别确保它newuser
是正确的。然后再次尝试命令:
pg_dump -h localhost -U postgres database_name -f mydb.dump
但这没有用。输出文件仍将所有者标识为olduser
. 为什么会这样?我怎样才能确保这不会发生?
pg_dump
当我意识到必须更改数据库的所有者时,我正在使用命令导出数据库。所以我改变了它,并特别确保它newuser
是正确的。然后再次尝试命令:
pg_dump -h localhost -U postgres database_name -f mydb.dump
但这没有用。输出文件仍将所有者标识为olduser
. 为什么会这样?我怎样才能确保这不会发生?
您调用的方式
pg_dump
(没有-C
),根本不会转储数据库元数据。用这个:
这将添加
CREATE DATABASE
到ALTER DATABASE ... OWNER TO
您的转储。