在PostgreSQL中创建数据库副本

在pgAdmin中将整个数据库(其结构和数据)复制到新数据库的正确方法是什么

Postgres允许在创建新数据库时使用服务器上的任何现有数据库作为模板。我不确定pgAdmin是否在“创建数据库”对话框中为您提供了选项,但如果没有,您应该能够在查询窗口中执行以下操作:

使用模板originaldb OWNER dbuser创建数据库newdb;

不过,您可能会得到:

错误:其他用户正在访问源数据库“originaldb”

要断开所有其他用户与数据库的连接,可以使用以下查询:

从pg_stat_活动中选择pg_terminate_后端(pg_stat_activity.pid)
其中pg_stat_activity.datname='originaldb'和pid&lt&燃气轮机;pg_backend_pid();

发表评论