ITPub博客

首页 > > > PostgreSQL的备份与恢复

PostgreSQL的备份与恢复

作者:浪花小雨滴 时间:2020-06-17 17:02:32 0 删除 编辑

Postgresql数据库迁移分两类:

  1. 同用户名、同schema迁移;可以使用pg数据库备份、还原功能。
  2. 不同用户名、不同schema迁移;

对于第二用迁移相对比较复杂,pg数据库访问时schema时,按照“$user”,public的顺序进行。

可通过sql shell输入命令查看:

#SHOW search_path;

也可通过postgresql.config文件进行查看。文件地址:

“安装目录“/data/postgresql.conf


查看数据库schema访问顺序

因此在数据恢复之后要进行schema的访问顺序设置,通过命令行:

#ALTER USER test(用户名) SET search_path to test(schema名称),public

具体过程:

同用户名同schema数据库恢复:

1.备份数据库

数据库右击选择备份,选择文件地址、输入文件名称,点击备份。


备份数据库


设置数据库文件地址、文件名

结果进程返回0,说明备份成功,点击完成即可。


备份成功图

2.恢复数据库

新建数据库,名字根据自己的需求命名,所有者要和备份数据库一致。

右击数据库,选择恢复。

选择备份成功的数据库文件。

点击恢复。


设置数据库名称


恢复数据库


恢复文件选择

恢复进程为0,说明恢复成功。


恢复成功图
数据库表相同

不同用户不同schema恢复:

本人是通过navicat进行操纵,感觉比较好用,pg数据库也可以,但比价麻烦。

将数据库用户名为test,schema为test的数据库,转到数据库用户名为test1,schema为test1的数据库中。

1. 生成sql文件。


生成sql文件

运行成功如图下


运行成功图


2. 新建用户及数据库和schema,下面数据库是通过pg建的。


新建数据库

3. 修改sql文件,将文件中的schema名称test,替换成test1。

4. 恢复数据schema,选择数据库》test1,右击选择运行sql文件


恢复文件

5. 选择文件


选择sql文件

6. 运行成功


文件恢复成功

7. 设置schema访问顺序,在查询窗口运行下面语句

#ALTER USER zjch SET search_path to test1,public

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3143984/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-05-16

  • 博文量
    4259
  • 访问量
    40175