postgres数据库迁移

2018-07-17  本文已影响0人  Steven_ce5e

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

上一篇下一篇

猜你喜欢

热点阅读