gpt4 book ai didi

postgresql - 如何让 pg_dump 包含创建用户命令

转载 作者:行者123 更新时间:2023-11-29 12:35:19 25 4
gpt4 key购买 nike

我需要创建以下所有命令的转储。

   test=> create user rdstest login password 'rdstest';
CREATE ROLE
test=> grant connect on database test to rdstest;
GRANT
test=> create user devadmin login password 'devtest';
CREATE ROLE
test=> grant connect on database test to devadmin;
GRANT
test=> grant rdstest to devadmin with admin option;
GRANT ROLE
test=> grant rdstest to devadmin;
GRANT ROLE
test=> create schema authorization rdstest;
CREATE SCHEMA

当我尝试使用 pg_dump 创建它时作为 pg_dump -U devadmin -h ****xxx.rds.amazonaws.com test > Outfile.sql

我只能看到模式相关的命令

CREATE SCHEMA rdstest;
ALTER SCHEMA rdstest OWNER TO rdstest;

如何让 pg_dump 包含所有命令:创建用户命令,将数据库测试连接到 rdstest 等。

最佳答案

pg_dump 不能那样做,因为 pg_dump 只转储一个数据库 并且该信息不是一个数据库的一部分,而是全局存储在 Postgres“集群”中。

为此,您需要使用 pg_dumpall,使用 --globals-only 选项:

pg_dumpall --globals-only  --file=globals.sql

关于postgresql - 如何让 pg_dump 包含创建用户命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49784691/

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