• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    postgresql运维之远程迁移操作
    POST TIME:2021-10-18 23:00

    背景:高可用架构版本。

    主备分别部署在机器A和B上,现在要将其分别迁移到机器C和D上。

    思路:

    1、首先根据源实例的备份(云盘上可用snapshot),创建一个mirror实例,mirror包含两个节点,分别部署在C和D上。

    2、在源实例主节点hba.conf中增加mirror主节点的ip的设置,允许源实例主节点接受来自mirror主节点的连接。

    3、mirror实例主节点,创建recovery.conf文件,设置primary_conninfo指向源主节点。启动mirror主节点,建立源实例主到mirror实例主节点的复制关系。

    4、在mirror实例主节点hba.conf中增加mirror备节点的ip。允许mirror主节点接受来自mirror备节点的连接。

    5、mirror实例备节点,创建recovery.conf文件,设置primary_conn指向mirror实例主节点。启动备节点,建立mirror实例主节点到mirror实例备节点的复制关系。

    6、提升mirror实例主节点为cluster master。

    postgresql 备提升为主的方式:

    pg_ctl方法:在备库主机执行pg_ctl promote shell脚本

    触发器文件方式:备库配置recover.conf文件的trigger_file参数,之后在备库主机上创建触发器文件。

    补充:Postgresql迁移数据文件存放位置

    1. POSTGRESQL的安装

    centos7 里面默认的pgsql的版本是 9.2.4 如果想用更高的版本需要执行以下如下的命令

    rpm -ivh https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm

    安装成功后进行安装

    yum install postgresql11
    yum install postgresql11-server

    然后启动并且设置为开机启动

    systemctl enable postgresql-11 
    systemctl start postgresql-11

    启动之后进行数据库初始化

    11 以上的系统 还是比较简单的 直接执行

    postgresql-setup initdb 就可以初始化数据库

    设置密码等工作

    su - postgres

    登录数据库

    psql -U postgres

    修改密码

    ALTER USER postgres WITH PASSWORD 'Test6530' 设置密码 

    \q退出数据库

    2. 修改数据库使之能够被远程链接

    数据库的配置文件默认为:

    查看服务状态可得

    进入 data目录

    /var/lib/pgsql/11/data/
    /usr/lib/systemd/system/postgresql-11.service
    cd /var/lib/pgsql/11/data/
    

    修改pg_hba.conf 即可

    3. 创建新的数据目录

    mkdir /home/pgdata

    4.关闭pgsql

    systemctl stop postgresql-11

    5. 复制原来的文件

    cp -R /var/lib/pgsql/11/data/* /home/pgdata

    6.修改权限

    chown -R postgres:postgres /home/pgdata
    chmod 750 /home/pgdata -R

    7. 修改systemd 里面的配置文件

    vim /usr/lib/systemd/system/postgresql-11.service

    修改PGDATA的指向

    8.执行命令重启

    systemctl daemon-reload
    systemctl start postgresql-11

    9. 删除原始PGDATA 里面的内容 重启虚拟机验证。

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • postgresql 如何查看pg_wal目录下xlog文件总大小
    • Postgresql去重函数distinct的用法说明
    • postgresql 12版本搭建及主备部署操作
    • 开源数据库postgreSQL13在麒麟v10sp1源码安装过程详解
    • postgresql初始化之initdb的使用详解
    • postgresql之使用lsn 获取 wal文件名的实例
    • 修改postgresql存储目录的操作方式
    • Postgresql中xlog生成和清理逻辑操作
    上一篇:postgreSQL自动生成随机数值的实例
    下一篇:修改postgresql存储目录的操作方式
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信