PostgreSQL数据库判断主备角色的五种方法
1、1.方式一:操作系统上查看WAL发送进程或WAL接收进程执行ps -ef|grep "wal" |grep -v "grep"如果输出wal sender......streaming 进程说明当前数据库为主库
2、2.如果输出wal receiverstreaing 进程说明当前数据库为备用库
3、3.方式弛阻廖娓二:数据库上查看WAL发送进程或WAL接收进程在主库上查询pg_stat_replication视图,如果返回记录说明是主库,备库上查询此视图无记录select pid,usen锾攒揉敫ame,application_name,client_addr,state,sync_state from pg_stat_replication;
4、4.在备库上查看pg_stat_wal_receiver视图,如果返回记录说明是备库,流复制主库上此视图无记录
5、5.方式三:通过系统函数查看登录数据库执行pg_is_in_recovery()函数,如果返回t说明是备库,返回f说明是主库
6、6.方式四:查看数据库控制信息通过pg_controldata命令查看数据库控制信息,内容包含WAL日志信息、checkpoint、数据块等信息,通过Database cluster state信息可以判断是主库还是备库返回 in production表示为主库 返回 in archive recovery表示是备库
7、7.方式五:通过recovery.conf配置文件查看在配置流复制过程中,在备库$PGDATA目录下会创建recovery.conf配置文件,如果存在这个配置文件说明是备库,如果不存在此文件或此文件后缀是recovery.done则说明是主库
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:38
阅读量:33
阅读量:49
阅读量:28
阅读量:54