首页 > 解决方案 > 本地和实时 postgresql 数据库名称和用户是否必须匹配?

问题描述

我有一个本地开发数据库,​​我一直在填写数据。它使用与我的实时数据库不同的数据库名称、用户和密码。

我去了我的实时服务器并进行了备份。然后我还运行以下命令来创建一个 sql 文件。

pg_dump -U myuser -h localhost mydb > db.sql

我的问题是,我是否需要使用与本地开发分支相同的名称和用户名重新创建我的实时数据库?

标签: postgresql

解决方案


您可以在恢复数据库时使用另一个数据库名称,并且您可以使用另一个用户恢复数据库,前提是该用户具有超级用户权限。

使用 pg_dump 命令,您只需要在运行还原之前创建数据库。

例如(假设su1是超级用户):

create database mydb1 owner su1;

要恢复您的 pg_dump 备份,您只需要运行:

psql -U su1 -d mydb1 < db.sql

推荐阅读