postgres数据库迁移

postgres进行迁移可以使用psql,也可以使用postgres自带工具pg_dump和pg_restore.

命令:

– 备份

pg_dump -h 13.xx.xx.76 -U postgres -n “public” “schema” -f ./schema_backup.gz -Z 9

-h host,备份目标数据库的ip地址

-U 用户名(输入命令后会要求输入密码,也可以使用-w输入密码)

-n 需要导出的schema名称

-f 导出存储的文件

-Z 进行压缩(一般导出文件会占用很大的存储空间,直接进行压缩)

– 恢复

gunzip schema_backup.gz ./ (对导出的压缩文件解压)

psql -U postgres -f ./schema_backup >>restore.log

参数意义与导出一样

坑与tips:

版本,pg_dump的版本要高于目标备份数据库的版本(比如目标数据库是10.3, pg_dump要使用10.3或者10.4)

-Z 是pg_dump提供的压缩参数,默认使用的是gzip的格式,目标文件导出后,可以使用gunzip解压(注意扩展名,有时习惯性命名为.dump 或者.zip,使用gunzip时会报错,要改为.gz)

也可以针对指定的表进行导出操作:

pg_dump -h localhost -U postgres -c -E UTF8 –inserts -t public.t_* > t_taste.sql

–inserts 导出的数据使用insert语句

-c 附带创建表命令

具体参数:

https://www.postgresql.org/docs/9.2/static/app-pgdump.html

    原文作者:Steven_ce5e
    原文地址: https://www.jianshu.com/p/99491fccc497
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞