postgres高版本迁移到低版本

目前postgres的版本高的有12+,低的还有10+,都是普遍正在使用的版本,甚至有些老系统还在使用9+的系列版本。因为某些原因,现在需要将部分数据从12+高版本迁移到10+的低版本

 

这个在理论上是可行的,可选的组件有pg_dump和pg_dumpall。

pg_dump只备份数据库集群中的某个数据库的数据,它不会导出角色和表空间相关的信息,因为这些信息是整个数据库集群共用的,不属于某个单独的数据库。

pg_dumpall,对集簇中的每个数据库调用pg_dump来完成该工作,还会还转储对所有数据库公用的全局对象(pg_dump不保存这些对象)。 目前这包括适数据库用户和组、表空间以及适合所有数据库的访问权限等属性。

备份命令:
    
    对单个数据库进行备份

    pg_dump  –h 127.0.0.1  -p  5432  -U  postgres -c  –f  dbname.sql  dbname

    使用如下命令可对全部pg数据库进行备份

    pg_dumpall –h 127.0.0.1 –p 5432 -U postgres –c –f db_bak.sql

    恢复方式很简单,执行恢复命令即可:

    psql –h 127.0.0.1 -p 5432 -U postgres –f db_bak.sql

 

这里需要注意的是,pg_dump和pg_dumpall都要用和当前pgsql版本相同配套的组件才行,比如12+的pgsql操作的时候,需要使用12+相应的pg_dump/pg_dumpall组件;10+的时候,需要使用10+相应的psql,不然会报一些莫名其妙的错误出来。

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值