关键字:
KingbaseES、 sql、replication、人大金仓
查看流复制
select * from sys_stat_replication;
pid:sender的进程
usesysid:复制的用户id
usename:复制的用户名
client_addr:复制的客户端地址
backend_start:本次主从搭建的时间
state:startup(连接中)、catchup(同步中)、streaming(同步)
sent_location:Master传送wal的位置
write_location:slave接收wal的位置
flush_location:slave同步到磁盘的wal位置
replay_location:slave同步到数据库的wal位置
sync_priority:同步replication的优先度,0表示异步、1-?表示同步(数字越小,优先度越高)
sync_state:async(异步)、sync(同步)、potential(表示备库为异步同步方式,如果当前的同步备机宕机,
异步备库可升级成为同步备库)、quorum(优选提交,任意一台备数据库为同步备机)
创建删除查看复制槽
删除复制槽
Select sys_drop_replication_slot(‘slot_1’);
创建复制槽
Select sys_create_physical_replication_slot('slot_1');
查看复制槽
Select * from sys_replication_slots;
slot_name:复制槽名
slot_type:复制槽类型
temporary:该复制槽是否是临时复制槽
active:是否活跃
active_pid:对应流复制进程id
xmin:对应库存在的最老事务处理,vacuum不能删除之后的数据
restart_lsn:对应数据库能访问到的最老的数据点
当前wal文件
Select
--pg_current_wal_lsn():获得当前wal日志写入位置
--pg_walfile_name(pg_current_wal_lsn()):转换wal位置为文件名
--pg_walfile_name_offset(pg_current_wal_lsn()):返回转换后的wal日志文件名和偏移量
--注,LSN对应关系:
--LSN: 0/1C438D0
--'/'号前面的0代表walfile的第二部分
--'/'号后面的1代表wal文件的最后两位
--C438D0代表偏移量(16进制转换为10进制)
--walfile:000000010000000000000001
--由24个字符组成,分3部分,每部分由8个字符组成
--00000001:代表时间线
--00000000:LogId(0递增)
--00000001:LogSeg(0递增)
查看主备lsn差异
select sys_wal_lsn_diff(pg_current_wal_flush_lsn(),flush_lsn)/1024/1024 as MB from sys_stat_replication;
select sys_wal_lsn_diff(pg_last_wal_receive_lsn(),flush_lsn)/1024/1024 as MB from sys_stat_replication;
pg_current_wal_lsn():当前预写式日志刷写日志。
pg_last_wal_receive_lsn():显示备份最近接受的wal日志位置
flush_lsn:slave同步到磁盘的wal位置