首页 > 系统相关 >KingbaseES V8R6集群部署案例之---Windows环境配置主备流复制(异机复制)

KingbaseES V8R6集群部署案例之---Windows环境配置主备流复制(异机复制)

时间:2022-08-19 18:25:44浏览次数:69  
标签:slot V8R6 Windows sys host 复制 主备 keepalives

案例说明:
目前KingbaseES V8R6的Windows版本不支持数据库sys_rman的物理备份,可以考虑通过建立主备流复制实现数据库的异机物理备份。本案例详细介绍了,在Windows环境下建立流复制的过程,备库的创建可以在同一节点完成,也可以异机创建流复制。

Tips:

异机构建主备流复制步骤和以上同一主机构建基本一致。
主机节点使用相同的操作系统版本和数据库版本。
检查主机之间的网络连通性,注意防火墙的配置。

适用版本:
Windows KingbaseES V8R6

系统环境:

节点信息:

一、主备库安装相同的数据库版本(尽量和主库的目录结构一致)

二、主库配置归档、流复制相关参数

# kingbase.conf配置

port=54321
archive_mode = on     
archive_command = 'copy "%p" "d:\\kes_arch\\%f"'      
wal_level = replica
max_wal_senders = 10
wal_keep_segments = 100	 

# kingbase.auto.conf 配置

# Do not edit this file manually!
# It will be overwritten by the ALTER SYSTEM command.
primary_conninfo = 'user=system password=123456 connect_timeout=10 host=192.168.1.2 
port=54321 keepalives=1 keepalives_idle=10 keepalives_interval=1 keepalives_count=3 
application_name=node01'
recovery_target_timeline = 'latest'
primary_slot_name = 'repmgr_slot_1'
wal_retrieve_retry_interval = '5000'

三、主库配置sys_hba.conf(用于异机的主备流复制)

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             0.0.0.0/0               scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
host    all             all             ::0/0                   scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
host    replication     all             127.0.0.1/32            scram-sha-256
host    replication     all             ::1/128                 scram-sha-256

host    replication     all             0.0.0.0/0            scram-sha-256

=如下所示:sys_hba.conf增加以下条目,用于异机复制。=

四、在备库通过sys_basebackup执行clone

Tips:
如果备库data目录已经存在,可以改名后,创建一个空的data目录。

D:\Program Files\Kingbase\ES\V8\Server\bin>sys_basebackup -h 192.168.1.1 -U system -W 
-C -S "repmgr_slot_2" -R -F p -X stream -v -P -D "D:\Program Files\Kingbase\ES\V8\data"

五、修改备库流复制配置

# kingbase.auto.conf 配置

# Do not edit this file manually!
# It will be overwritten by the ALTER SYSTEM command.
primary_conninfo = 'user=system password=123456 connect_timeout=10 host=192.168.1.1
 port=54321 keepalives=1 keepalives_idle=10 keepalives_interval=1 keepalives_count=3 
 application_name=node02'
recovery_target_timeline = 'latest'
primary_slot_name = 'repmgr_slot_2'
wal_retrieve_retry_interval = '5000

六、启动备库数据库服务
D:\Program Files\Kingbase\ES\V8\Server\bin>sys_ctl restart -D "D:\Program Files\Kingbase\ES\V8\data"

七、验证主备流复制
Tips:
如果主备流复制异常,可以查看备库的sys_log日志,获取相关的故障信息。

1、查看主备流复制状态

D:\Program Files\Kingbase\ES\V8\Server\bin>ksql -U system -W test
口令:
ksql (V8.0)
输入 "help" 来获取帮助信息.

test=#  select * from sys_stat_replication;
  pid  | usesysid | usename | application_name | client_addr | client_hostname | client_port |         backend_start         | backend_xmin |   state   | sent_lsn  | write_lsn | flush_lsn | replay_lsn | write_lag | flush_lag | replay_lag | sync_priority | sync_state |          reply_time
-------+----------+---------+------------------+-------------+-----------------+-------------+-------------------------------+--------------+-----------+-----------+-----------+-----------+------------+-----------+-----------+------------+---------------+------------+-------------------------------
 18324 |       10 | system  | node02           | 192.68.1.2   |                 |       54411 | 2022-08-16 14:57:31.810737+08 |              | streaming | 0/50001A8 | 0/50001A8 | 0/50001A8 | 0/50001A8  |           |           |            |             0 | sync      | 2022-08-16 14:57:42.327673+08
(1 行记录)

2、查看复制槽信息

D:\Program Files\Kingbase\ES\V8\Server\bin>ksql -U system -W test
口令:
ksql (V8.0)
输入 "help" 来获取帮助信息.

test=# select * from sys_replication_slots;
   slot_name   | plugin | slot_type | datoid | database | temporary | active | active_pid | xmin | catalog_xmin | restart_lsn | confirmed_flush_lsn
---------------+--------+-----------+--------+----------+-----------+--------+------------+------+--------------+-------------+---------------------
 repmgr_slot_2 |        | physical  |        |          | f         | t      |      18324 |      |              | 0/5019BE0   |
 repmgr_slot_1 |        | physical  |        |          | f         | f      |            |      |              |             |
(2 行记录)

八、总结
对于在KingbaseES V8R6的Windows环境,创建主备流复制与Linux环境基本相同,对于Windows环境不支持sys_rman的物理备份,可以考虑通过物理的流复制建立异机的备份。

标签:slot,V8R6,Windows,sys,host,复制,主备,keepalives
From: https://www.cnblogs.com/kingbase/p/16602944.html

相关文章

  • Kingbase V8R6存储过程变量数据导出到操作系统文件
    KingbaseV8R6存储过程变量数据导出到操作系统文件说明:KingbaseESV8R6如何将自定义过程中的变量数据导出到操作系统文件中。本次案例数据库版本:test=#selectversion......
  • Windows 设置开机自启 将可执行文件加入到系统服务中
    安装程序下载链接https://github.com/winsw/winsw/releases/tag/v2.11.0修改文件名这里我就下载了红框中的两个下载完成之后修改这两个文件的名称为nginxService.x......
  • windows11安装docker并运行
    在windows11中安装docker的步骤如下:一、检查电脑是否开启虚拟化功能打开任务管理器,查看性能选项卡中的CPU信息,在右下角可以看到虚拟化是否开启。如未开启需要重启到BIOS......
  • mysql数据库安装(windows)
    一、下载解压缩文件(免安装版)个人认为配置起来很方便,免去了安装的时各种选择,不用管对应的安装依赖问题。官网下载地址:https://dev.mysql.com/downloads/mysql/二......
  • Windows中的用户和用户组
    SID每个用户账户拥有唯一的安全标识符,用来记录用户的权限SID的组成:SID=WindowsID+用户IDWindowsID:在安装Windows的过程每台计算机都会产生不同的WindowsID用户......
  • Windows的DirectX诊断工具,directX诊断工具是做什么用的?
    参考答案:在Windows中,与游戏以及多媒体直接相关的就是DirectX,通过系统自带的DirectX诊断工具就可以对游戏和多媒体出现的显示、声音不正常等问题进行诊断,让它们运行得更顺......
  • 【数据库】在Windows上安装SQLite
    1.从官方网站上windows区域下载以下2个文件, sqlite官方文档:https://www.sqlite.org/index.html安装包下载路径:https://www.sqlite.org/download.html我是下载下面两个......
  • windows自动切换深色模式(夜晚模式)
    windows系统上怎么根据日出日落时间判断切换为深色模式或浅色模式呢?windows系统自带了一个叫做“任务计划程序”的软件。可以通过“开始菜单”中的搜索找到。然后选择“......
  • Python 虚拟环境管理神器:virtualenvwrapper-win for windows
    项目开发时,为了不污染全局环境,通常会使用虚拟环境隔离工具:virtualenvvirtualenvwrapper 是将所有的虚拟环境放在同一个目录下,方便管理,在使用shell配合小型开发工具就会......
  • 006:奇怪的类复制(Mooc)
    1#include<iostream>2usingnamespacestd;3classSample{4public:5intv;6Sample(intn=0):v(n){};//设置缺省值为0,没有初值时初始化v=......