PostgreSql从库重新配置的详情

 更新时间:2020年12月26日 17:19:04   作者:yang_z_1  
这篇文章主要介绍了PostgreSql从库重新配置的详情,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

postgresql数据库采用主从配置 在主库正常从库挂掉的情况下 重新对从库配置
😊

配置详情:
主库数据文件:100G
压缩时间1小时40分钟,压缩后文件大小46G
解压时间55分钟

1 复制从库之前配置的参数文件

进入pgsql 文件下面的data文件

#把pgsql的配置文件复制到/home 文件下
[root@postgre2 data]# cp pg_hba.conf /home/
[root@postgre2 data]# cp postgresql.conf /home/
[root@postgre2 data]# cp recovery.conf /home

2、停下现有的从库

从库:

/usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ stop --从库的data文件位置
[root@postgre2 ~]# su - postgres
Last login: Tue Dec 22 13:32:15 CST 2020 on pts/0
-bash-4.2$ /usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ stop
waiting for server to shut down.... done
server stopped

3、开启主库的备份状态

主库:

[root@postgre1 ~]# su - postgres
Last login: Thu Dec 24 09:23:55 CST 2020 on pts/1
-bash-4.2$ psql
psql (11.7)
Type "help" for help.

postgres=# select pg_start_backup('/tmp/backup');
pg_start_backup
-----------------
2/90000

–窗口不要退出

4、把主数据库目录拷贝到备库目录就可以了:

主库:
数据库目录压缩

[root@postgre1 pgsql]# pwd
/u01/pgsql
[root@postgre1 pgsql]# tar -zcvf data.tar.gz data

从库:
删除从库原来的data目录

[root@postgre2 ~]# cd /u01/pgsql/
[root@postgre2 pgsql]# ls
data
[root@postgre2 pgsql]# rm -fr data/

主库:
数据库目录远程传输

[root@postgre1 pgsql]# sudo scp data.tar.gz root@postgre2:/u01/pgsql/data

从库:
解压数据库目录

[root@postgre2 ~]# cd /u01/pgsql/
[root@postgre2 pgsql]# tar -zxvf data

删掉从主库拷贝过来的postmaster.pid

[root@postgre2 pgsql]# cd data/
[root@postgre2 data]# rm -r postmaster.pid

5、还原之前复制的recovery.conf文件

[root@postgre2 data]# cp /home/recovery.conf .
[root@postgre2 data]# chown postgres:postgres recovery.conf
[root@postgre2 data]# cp /home/postgresql.conf .
[root@postgre2 data]# cp /home/pg_hba.conf .

6、停下主库备份

主库:

postgres=# select pg_stop_backup();

NOTICE: pg_stop_backup complete, all required WAL segments have been archived
pg_stop_backup
----------------
0/640001F8

7、启动备库

从库:

[root@postgre2 ~]# su - postgres
Last login: Thu Dec 24 11:06:30 CST 2020 on pts/1
-bash-4.2$ /usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ start

如果没有启动systemctl status postgresql-11或者log日志查看具体问题
如果从库配置的时间过长,最后就会报错,显示找不到日志文件
但是只要主从配置好了,数据能从主库自动同步从库 就可以忽略错误

到此这篇关于PostgreSql从库重新配置的详情的文章就介绍到这了,更多相关PostgreSql从库重新配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Ubuntu中卸载Postgresql出错的解决方法

    Ubuntu中卸载Postgresql出错的解决方法

    这篇文章主要给大家介绍了关于在Ubuntu中卸载Postgresql出错的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09
  • PostgreSQL 远程连接配置操作

    PostgreSQL 远程连接配置操作

    这篇文章主要介绍了PostgreSQL 远程连接配置操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • postgresql兼容MySQL on update current_timestamp问题

    postgresql兼容MySQL on update current_timestamp

    这篇文章主要介绍了postgresql兼容MySQL on update current_timestamp问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 详解如何定位postgreSQL数据库中未被使用过的索引

    详解如何定位postgreSQL数据库中未被使用过的索引

    在生产环境上,由于不规范的优化措施,数据库中可能存在大量的索引,并且相当一部分的索引重未被使用过,今天带大家如何找出这些索引,本文给大家介绍了定位postgreSQL数据库中未被使用过的索引的方法,需要的朋友可以参考下
    2024-03-03
  • PostgreSQL中的VACUUM命令用法说明

    PostgreSQL中的VACUUM命令用法说明

    这篇文章主要介绍了PostgreSQL中的VACUUM命令用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • 解决PostgreSQL服务启动后占用100% CPU卡死的问题

    解决PostgreSQL服务启动后占用100% CPU卡死的问题

    前文书说到,今天耗费了九牛二虎之力,终于驯服了NTFS权限安装好了PostgreSQL,却不曾想,服务启动后,新的状况又出现了。
    2009-08-08
  • PostGreSql 判断字符串中是否有中文的案例

    PostGreSql 判断字符串中是否有中文的案例

    这篇文章主要介绍了PostGreSql 判断字符串中是否有中文的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • PostgreSQL基于Citus实现分布式集群的全过程

    PostgreSQL基于Citus实现分布式集群的全过程

    Citus是一个PostgreSQL扩展,它将Postgres转换为分布式数据库,因此您可以在任何规模上实现高性能,因客户的需求,本文详细阐述了PostgreSQL基于Citus实现的分布式集群的全过程,需要的朋友可以参考下
    2023-11-11
  • postgresql 中的时间处理小技巧(推荐)

    postgresql 中的时间处理小技巧(推荐)

    这篇文章主要介绍了postgresql 中的时间处理小技巧(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • PostgreSQL COALESCE使用方法代码解析

    PostgreSQL COALESCE使用方法代码解析

    这篇文章主要介绍了PostgreSQL COALESCE使用方法代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12

最新评论