PostgreSQL: dump and restore



我使用EMS SQL Manager for PostgreSQL,我需要转储困难的数据库(域,300+存储过程/函数,触发器,数据等)。此工具无法做到这一点。

请告诉我好的 GUI 工具用于后期。

您始终可以使用命令行实用程序。
转储集群:

pg_dumpall -p 5432 > /path/to/my/dump_file.sql

转储单个数据库:

pg_dump -p 5432 mydb > /path/to/my/mydb_dump.sql

仅转储架构:

pg_dump -p 5432 mydb -s > /path/to/my/mydb_dump_schema.sql

手册中有更多内容。

如果要还原到空数据库,可能需要在还原之前运行:

DROP DATABASE IF EXISTS mydb;
CREATE DATABASE mydb;

在这种情况下,不需要pg_dump--clean选项。

备份数据库 无需工具。我们可以使用终端

所有命令都应以 postgres 用户身份运行。

 sudo su - postgres 

备份单个数据库

pg_dump db_name > db_backup.sql

还原单个数据库

psql db_name < db_backup.sql

备份整个 postgres 数据库集群

pg_dumpall > cluster_backup.sql

恢复整个 postgres 数据库集群

psql -f cluster_backup.sql postgres

有关更多命令备份命令,请参阅此源

pgAdmin3 可以解决问题,它pg_dump并且pg_restore包含在安装程序中。

如果您使用

MD5 身份验证技术并希望使用特定用户来获取数据库转储,您可以

$ pg_dump -U username -p 5432 dbname > filename-to-backup-to.sql

若要避免还原时出现凭据和用户名问题,可以使用--no-owner标志

$ pg_dump --no-owner -U username -p 5432 dbname > filename-to-backup-to.sql

要恢复备份,请使用以下命令

$ psql -U username -d dbname -f filename-to-backup-to.sql

pg_dump -U uguryilmaz modaltrans_dev> backup.sql

最新更新