DM8:达梦数据库读写分离集群搭建
达梦数据库:读写分离集群搭建–> 介绍:读写分离集群由一个主库以及一个或者多个配置了即时(Timely)归档或实时(Realtime)归档的备库组成,其主要目标是在保障数据库可用性基础上,实现读、写操作的自动分离,进一步提升数据库的业务支撑能力。读写分离集群通过配置事务一致模式保证主、备库数据一致性,并配合达梦数据库管理系统的各种接口(JDBC、DPI等),将只读操作自动分流到备库,有效降低主库的
达梦数据库:读写分离集群搭建
介绍:
读写分离集群由一个主库以及一个或者多个配置了即时(Timely)归档或实时(Realtime)归档的备库组成,其主要目标是在保障数据库可用性基础上,实现读、写操作的自动分离,进一步提升数据库的业务支撑能力。读写分离集群通过配置事务一致模式保证主、备库数据一致性,并配合达梦数据库管理系统的各种接口(JDBC、DPI等),将只读操作自动分流到备库,有效降低主库的负载,提升系统吞吐量。
操作系统: 银河麒麟v10 (Linux7-Centos7)
cpu:鲲鹏系列
达梦数据库版本号:v8.1 安全版
1 查看磁盘空间
$ df -h
得知 /home 路径下面有800G 可用空间
实际生产环境如果并发压力大,
建议每台服务器配置双ip (注意修改dmmal.ini)
此环境为:每台服务器单独一个 ip
规划:
实例名 | PORT_NUM | MAL_INST_DW_PORT | MAL_HOST | MAL_PORT | MAL_DW_PORT |
---|---|---|---|---|---|
GRP1_RWW_01 | 5236 | 5246 | 10.10.16.76 | 5256 | 5266 |
GRP1_RWW_02 | 5236 | 5246 | 10.10.16.77 | 5256 | 5266 |
GRP1_RWW_03 | 5236 | 5246 | 10.10.16.78 | 5256 | 5266 |
全局组id:oguid:453332
达梦数据库程序安装路径:
/home/dmdba/dmdbms/
达梦数据库实例安装路径:
/home/dmdba/dmdata/
与应用服务之前的数据库匹配需要注意的参数:(#字符集,#大小写是否敏感)
环境需求为:#字符集utf-8,#大小写不敏感
2 安装达梦数据库程序
三台服务器分别安装达梦数据库程序
引用之前写过的文章做参考:
https://blog.csdn.net/qq_37358909/article/details/109381280
3 初始化数据库实例
初始化数据库实例:#字符集utf-8,#大小写不敏感
使用dmdba用户
$ su - dmdba
$ cd /home/dmdba/dmdbms/bin/
$ ./dminit PATH=/home/dmdba/dmdata page_size=32 extent_size=32 CASE_SENSITIVE=0 CHARSET=1
命令行启停一次数据库实例服务
$ cd /home/dmdba/dmdbms/bin/
$ ./dmserver /home/dmdba/dmdata/DAMENG/dm.ini
日志界面显示
system is ready
SYSTEM IS READY
说明数据库实例已经启动成功啦,,
输入:
exit
正常关闭数据库实例服务。
4 准备集群配置文件
10.10.15.76作为第一个初始化的实例
需要先修改和创建相关的配置文件放入数据库实例路径
使用dmdba用户
$ cd /home/dmdba/dmdata/DAMENG/
$ vi /dm.ini
$ vi dmarch.ini
$ vi dmmal.ini
$ vi dmwatcher.ini
具体的配置文件详细如下:
- 服务器:10.10.15.76
4.1 dm.ini 数据库实例配置
- dm.ini:
#此文件内容需要去更改对应的dm.ini文件
#文件位置为数据库实例路径:
vi /home/dmdba/dmdata/DAMENG/dm.ini
#实例名,建议使用―组名_守护环境_序号‖的命名方式,总长度不能超过 16
INSTANCE_NAME = GRP1_RWW_01
PORT_NUM = 5236 #数据库实例监听端口
DW_INACTIVE_INTERVAL = 60 #接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间
MAL_INI = 1 #打开 MAL 系统
ARCH_INI = 1 #打开归档配置
RLOG_SEND_APPLY_MON = 64 #统计最近 64 次的日志发送信息
4.2 dmarch.ini 配置本地归档和实时归档
- dmarch.ini
vi /home/dmdba/dmdata/DAMENG/dmarch.ini
ARCH_WAIT_APPLY=1
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME #远程实时归档
ARCH_DEST = GRP1_RWW_02 #实时归档目标实例名(当数据库GRP1_RWW_01是主库时同步到其他目标实例)
[ARCHIVE_REALTIME2]
ARCH_TYPE = REALTIME #远程实时归档
ARCH_DEST = GRP1_RWW_03 #实时归档目标实例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /home/dmdba/dmarch #本地归档文件存放路径
ARCH_FILE_SIZE = 2048 #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT = 204800 #单位 Mb,0 表示无限制,范围 1024~4294967294M
4.3 dmmal.ini 配置 MAL 系统
- dmmal.ini
vi /home/dmdba/dmdata/DAMENG/dmmal.ini
MAL_CHECK_INTERVAL = 60 #MAL 链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 60 #判定 MAL 链路断开的时间
[MAL_INST1]
MAL_INST_NAME = GRP1_RWW_01 #实例名,和 dm.ini 中的 INSTANCE_NAME 一致
MAL_HOST = 10.10.16.76 #MAL 系统监听 TCP 连接的 IP 地址
MAL_PORT = 5256 #MAL 系统监听 TCP 连接的端口
MAL_INST_HOST = 10.10.16.76 #实例的对外服务 IP 地址
MAL_INST_PORT = 5236 #实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致
MAL_DW_PORT = 5266 #实例对应的守护进程监听 TCP 连接的端口
MAL_INST_DW_PORT = 5246 #实例监听守护进程 TCP 连接的端口
[MAL_INST2]
MAL_INST_NAME = GRP1_RWW_02
MAL_HOST = 10.10.16.77
MAL_PORT = 5256
MAL_INST_HOST = 10.10.16.77
MAL_INST_PORT = 5236
MAL_DW_PORT = 5266
MAL_INST_DW_PORT = 5246
[MAL_INST3]
MAL_INST_NAME = GRP1_RWW_03
MAL_HOST = 10.10.16.78
MAL_PORT = 5256
MAL_INST_HOST = 10.10.16.78
MAL_INST_PORT = 5236
MAL_DW_PORT = 5266
MAL_INST_DW_PORT = 5246
4.4 dmwatcher.ini 配置守护进程
- dmwatcher.ini
vi /home/dmdba/dmdata/DAMENG/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = AUTO #自动切换模式
DW_ERROR_TIME = 120 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 120 #本地实例故障认定时间
INST_OGUID = 453332 #守护系统唯一 OGUID 值
INST_INI = /home/dmdba/dmdata/DAMENG/dm.ini #dm.ini 实例配置文件路径
INST_AUTO_RESTART = 1 #打开实例的自动启动功能
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver #命令行方式启动
RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阈值,默认关闭
RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阈值,默认关闭
4.25 直接跳到>>> 5 准备数据
77\78配置文件只作为说明:**
服务器10.10.15.77:
文件①数据库实例配置:
dm.ini:
#实例名,建议使用―组名_守护环境_序号‖的命名方式,总长度不能超过 16
INSTANCE_NAME = GRP1_RWW_02
PORT_NUM = 5236 #数据库实例监听端口
DW_INACTIVE_INTERVAL = 60 #接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间
MAL_INI = 1 #打开 MAL 系统
ARCH_INI = 1 #打开归档配置
RLOG_SEND_APPLY_MON = 64 #统计最近 64 次的日志重演信息
文件②,配置本地归档和即时归档:
dmarch.ini
ARCH_WAIT_APPLY=1
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME #远程实时归档
ARCH_DEST = GRP1_RWW_01 #实时归档目标实例名(当数据库GRP1_RWW_02是主库时同步到其他目标实例)
[ARCHIVE_REALTIME2]
ARCH_TYPE = REALTIME #远程实时归档
ARCH_DEST = GRP1_RWW_03 #实时归档目标实例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /home/dmdba/dmdata/DAMENG/arch #本地归档文件存放路径
ARCH_FILE_SIZE = 1024 #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT = 204800 #单位 Mb,0 表示无限制,范围 1024~4294967294M
文件③ 配置 MAL 系统:
dmmal.ini (配置同上,三台服务器配置内容需要一样)
文件④ 配置守护进程:
dmwatcher.ini (实例路径若一样,配置同上,若不一样,需要修改实例路径)
服务器10.10.15.78:
文件①数据库实例配置:
dm.ini
#实例名,建议使用―组名_守护环境_序号‖的命名方式,总长度不能超过 16
INSTANCE_NAME = GRP1_RWW_03
PORT_NUM = 5236 #数据库实例监听端口
DW_INACTIVE_INTERVAL = 60 #接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间
MAL_INI = 1 #打开 MAL 系统
ARCH_INI = 1 #打开归档配置
RLOG_SEND_APPLY_MON = 64 #统计最近 64 次的日志重演信息
文件②,配置本地归档和即时归档:
dmarch.ini
ARCH_WAIT_APPLY=1
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME #远程实时归档
ARCH_DEST = GRP1_RWW_01 #实时归档目标实例名
[ARCHIVE_REALTIME2]
ARCH_TYPE = REALTIME #远程实时归档
ARCH_DEST = GRP1_RWW_02 #实时归档目标实例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /home/dmdba/dmdata/DAMENG/arch #本地归档文件存放路径
ARCH_FILE_SIZE = 1024 #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT = 204800 #单位 Mb,0 表示无限制,范围 1024~4294967294M
文件③ 配置 MAL 系统:
dmmal.ini (配置同上,三台服务器配置内容需要一样)
文件④ 配置守护进程:
dmwatcher.ini (实例路径若一样,配置同上,若不一样,需要修改实例路径)
5 准备数据
将第一台创建好的数据库实例,同步到另外两台服务器
5.1 脱机备份数据库
参考文章:DM8数据守护与读写分离集群V4.0
7.1.1 脱机备份、脱机还原方 脱机备份、脱机还原方 式
- 正常关闭数据库实例服务
- 进行脱机备份
注意:(数据库实例服务要关闭,dmap服务要开启,归档要开启,否则无法进行脱机备份,COMPRESSED 表示开启压缩 默认压缩级别 1)
使用dmdba 用户 进入目录:
$ cd /home/dmdba/dmdbms/bin/
$ ./dmrman CTLSTMT="BACKUP DATABASE '/home/dmdba/dmdata/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/home/dmdba/dmdata/BACKUP_FILE_01' COMPRESSED"
日志打印如下:
BACKUP DATABASE '/home/dmdba/dmdata/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/home/dmdba/dmdata/BACKUP_FILE_01' COMPRESSED
Database mode = 1, oguid = 453332
EP[0]'s cur_lsn[78915]
Processing backupset /home/dmdba/dmdata/BACKUP_FILE_01
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:00][Remaining:00:00:00]
backup successfully!
time used: 00:00:01.100
-sh-4.2$
备份成功!
5.2 实例打压缩包并拷贝到备机
- 将备份文件和数据库实例所在的路径 dmdata 打压缩包,并拷贝到备库所在机器
- 使用dmdba用户进入目录
$ cd /home/dmdba/
$ tar -cvzf dmdata.tar.gz dmdata
- 拷贝文件
$ scp dmdata.tar.gz dmdba@10.10.16.77:/home/dmdba/
$ scp dmdata.tar.gz dmdba@10.10.16.78:/home/dmdba/
5.3 解压缩包,并执行脱机数据库还原
- 分别进入两台备机服务器使用 dmdba用户执行命令
$ cd /home/dmdba/
$ tar -zxvf dmdata.tar.gz
5.3.1 记得修改 dmarch.ini 文件的归档目标实例名
5.3.2 记得修改 dm.ini 中 INSTANCE_NAME 实例名
$ cd /home/dmdba/dmdbms/bin/
$ ./dmrman CTLSTMT="RESTORE DATABASE '/home/dmdba/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/home/dmdba/dmdata/BACKUP_FILE_01'"
- (跳过) 因为脱机备份没有产生任何 REDO 日志,所以 恢复 可以跳过
./dmrman CTLSTMT=“RECOVER DATABASE ‘/home/dmdba/dmdata/DAMENG/dm.ini’ FROM BACKUPSET ‘/home/dmdba/dmdata/BACKUP_FILE_01’”
- 更新数据库魔数 DB_MAGIC
$ ./dmrman CTLSTMT="RECOVER DATABASE '/home/dmdba/dmdata/DAMENG/dm.ini' UPDATE DB_MAGIC"
④还原数据库成功后继续修改和创建配置文件回到 第四步:
6 以mount方式启动主库/备库并配置
在三台服务器分别执行:
使用dmdba用户:
$ cd /home/dmdba/dmdbms/bin/
$ ./dmserver /home/dmdba/dmdata/DAMENG/dm.ini mount
启动后窗口不要关闭,需要继续配置数据库
在10.10.16.76:服务器执行
参考文档:DM8数据守护与读写分离集群V4.0
7.3.3.6 设置 OGUID
新建窗口执行命令
启动命令行工具 DIsql,登录主库设置。
需逐行执行:
$ cd /home/dmdba/dmdbms/bin/
$ ./disql SYSDBA/SYSDBA
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> sp_set_oguid(453332);
SQL> alter database primary;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
SQL> COMMIT;
SQL> EXIT
#系统通过 OGUID 值确定一个守护进程组,
#由用户保证 OGUID 值的唯一性,
#并确保数据守护系统中,数据库、守护进程和监视器配置相同的 OGUID 值
primary 为主库
standby 为备库
在10.10.16.77:服务器执行
新建窗口执行命令
启动命令行工具 DIsql,登录备库设置。
需逐行执行:
$ cd /home/dmdba/dmdbms/bin/
$ ./disql SYSDBA/SYSDBA
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> sp_set_oguid(453332);
SQL> alter database standby;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
SQL> COMMIT;
SQL> EXIT
在10.10.16.78:服务器执行
新建窗口执行命令
启动命令行工具 DIsql,登录备库设置 。
需逐行执行:
$ cd /home/dmdba/dmdbms/bin/
$ ./disql SYSDBA/SYSDBA
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> sp_set_oguid(453332);
SQL> alter database standby;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
SQL> COMMIT;
SQL> EXIT
7 配置普通监视器和确认监视器,并启动普通监视器
由于没有额外的服务器,计划将监视器配置在备库
使用dmdba用户进入目录
7.1 dmmonitor_auto.ini 配置确认监视器
10.10.16.78:
$ cd /home/dmdba/dmdata/DAMENG/
$ vi dmmonitor_auto.ini
MON_DW_CONFIRM = 1 #确认监视器模式
MON_LOG_PATH = /home/dmdba/dmdata/DAMENG/dmmonitorlog #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
[GRP1]
MON_INST_OGUID = 453332 #组 GRP1 的唯一 OGUID 值
#以下配置为监视器到组 GRP1 的守护进程的连接信息,以―IP:PORT‖的形式配置
#IP 对应 dmmal.ini 中的 MAL_HOST,PORT 对应 dmmal.ini 中的 MAL_DW_PORT
MON_DW_IP = 10.10.16.76:5266
MON_DW_IP = 10.10.16.77:5266
MON_DW_IP = 10.10.16.78:5266
7.2 dmmonitor_manual.ini 配置普通监视器
$ vi dmmonitor_manual.ini
MON_DW_CONFIRM = 0 #普通监视器模式
MON_LOG_PATH = /home/dmdba/dmdata/DAMENG/dmmonitorlog #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
[GRP1]
MON_INST_OGUID = 453332 #组 GRP1 的唯一 OGUID 值
#以下配置为监视器到组 GRP1 的守护进程的连接信息,以―IP:PORT‖的形式配置
#IP 对应 dmmal.ini 中的 MAL_HOST,PORT 对应 dmmal.ini 中的 MAL_DW_PORT
MON_DW_IP = 10.10.16.76:5266
MON_DW_IP = 10.10.16.77:5266
MON_DW_IP = 10.10.16.78:5266
- 新建打开普通监视器的脚本
cd /home/dmdba/dmdbms/
$ vi show.sh
#!/bin/sh
cd /home/dmdba/dmdbms/bin; ./dmmonitor /home/dmdba/dmdata/DAMENG/dmmonitor_manual.ini;
7.3 启动普通监视器
$ cd /home/dmdba/dmdbms/
$ ./show.sh
$ 注意打印的日志会报未收到守护进程消息(是因为下一步才启动守护进程,可以看到交互的日志)
8 前台启动数据守护进程
- 在三台服务器分别执行
- 使用dmdba用户
$ cd /home/dmdba/dmdbms/bin/
$ ./dmwatcher /home/dmdba/dmdata/DAMENG/dmwatcher.ini
- 并观察dmmonitor普通监视器的日志信息,
查看数据库为OPEN状态:在监视器日志输入 show - 数据库状态自动从 MOUNT 转换为 OPEN,为正常
- 在三台服务器分别执行(先备库):第 8 步的守护进程窗口 输入 : exit
- 在三台服务器分别执行(先主库):第 6 步的实例进程窗口 输入: exit
9 注册数据库后台服务
- 注意:数据库确认监视器服务(最后启动)若检测到主库不在,则将备库切换为主库
- 使用root 用户注册服务,先查看帮助
$ cd /home/dmdba/dmdbms/script/root/
[root@localhost root]$ ./dm_service_installer.sh -h
Usage: dm_service_installer.sh -t service_type [-p service_name_postfix] [-dm_ini dm_ini_file]
[-watcher_ini watcher_ini_file ] [-monitor_ini monitor_ini_file] [-cssm_ini cssm_ini_file]
[-dfs_ini dfs_ini_file] [-dcr_ini dcr_ini_file]
[-dss_ini dss_ini_file] [-drs_ini drs_ini_file] [-dras_ini dras_ini_file] [-dcs_ini dcs_ini_file] [-server server_info]
[-dmap_ini dmap_ini_file] [-m open|mount] [-y dependent_service] [-auto true|false]
or dm_service_installer.sh [-s service_file_path]
or dm_service_installer.sh -h
-t 服务类型,包括dmimon,dmap,dmserver,dmwatcher,dmmonitor,dmcss,dmcssm,dmasmsvr,dmdcs,dmdrs,dmdras,dmdss
-p 服务名后缀,对于dmimon,dmap服务类型无效
-dm_ini dm.ini文件路径
-watcher_ini dmwatcher.ini文件路径.
-monitor_ini dmmonitor.ini文件路径.
-dcr_ini dmdcr.ini文件路径.
-cssm_ini dmcssm.ini文件路径.
-dss_ini dss.ini文件路径.
-drs_ini drs.ini文件路径.
-dras_ini dras.ini文件路径.
-dcs_ini dcs.ini文件路径.
-dfs_ini dfs.ini文件路径.
-dmap_ini dmap.ini文件路径.
-server 服务器信息(IP:PORT)
-auto 设置服务是否自动启动,值为true或false,默认true.
-m 设置服务器启动模式open或mount,只针对dmserver服务类型生效,可选
-y 设置依赖服务,此选项只针对systemd服务环境下的dmserver和dmasmsvr服务生效
-s 服务脚本路径,设置则忽略除-y外的其他参数选项
-h 帮助
9.1 注册数据库实例服务
- 分别在三台服务器执行
- 创建数据库实例服务并设置为开机自启
- 注意:实例名与服务名需要对应,容易区分
76:GRP1_RWW_01
77:GRP1_RWW_02
78:GRP1_RWW_03
[root@localhost root]$ ./dm_service_installer.sh -t dmserver -p GRP1_RWW_01 -dm_ini /home/dmdba/dmdata/DAMENG/dm.ini -auto true -m mount
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServiceDMSERVER.service to /usr/lib/systemd/system/DmServiceGRP1_RWW_01.service.
创建服务(DmWatcherServiceDMWATCHER)完成
[root@localhost root]#
9.2 注册数据库实例数据守护服务
- 创建数据库守护进程服务并设置为开机自启
76:DmWatcherServiceDMWATCHER
77:DmWatcherServiceDMWATCHER
78:DmWatcherServiceDMWATCHER
[root@localhost root]$ ./dm_service_installer.sh -t dmwatcher -p GRP1_DMWH_01 -watcher_ini /home/dmdba/dmdata/DAMENG/dmwatcher.ini -auto true
Created symlink from /etc/systemd/system/multi-user.target.wants/DmWatcherServiceGRP1_DMWH_01 .service to /usr/lib/systemd/system/DmWatcherServiceGRP1_DMWH_01 .service.
创建服务(DmWatcherServiceDMWATCHER)完成
[root@localhost root]#
9.3 注册确认监视器服务
- 在10.10.16.78:注册确认监视器服务
[root@db2 root]$ ./dm_service_installer.sh -t dmmonitor -p DMMONITOR_AUTO -monitor_ini /home/dmdba/dmdata/DAMENG/dmmonitor_auto.ini
Created symlink from /etc/systemd/system/multi-user.target.wants/DmMonitorServiceDMMONITOR_AUTO.service to /usr/lib/systemd/system/DmMonitorServiceDMMONITOR_AUTO.service.
创建服务(DmMonitorServiceDMMONITOR_AUTO)完成
[root@db2 root]#
- 在三台服务器分别启动数据库实例服务
- 三台服务器的数据库目录相同
$ cd /home/dmdba/dmdbms/bin
- 三台服务器的数据库实例服务名不同
$ ./DmServiceGRP1_RWW_01 start
$ ./DmServiceGRP1_RWW_02 start
$ ./DmServiceGRP1_RWW_03 start
- 在三台服务器分别启动守护进程服务:(并查看普通监视器日志)
- 三台服务器的数据库目录相同
$ cd /home/dmdba/dmdbms/bin
- 三台服务器的数据库守护进程服务名相同
$ ./DmWatcherServiceDMWATCHER start
- 普通监视器日志
- 在监视器输入:show
9.4 验证集群功能
- 使用manage管理工具连接主库 将之前主库新建的表删除,,查看备库是否同步
- 查看dmmonitor监视器日志, LSN 码是否一致
- 确认没问题,启动确认监视器服务
$ cd /home/dmdba/dmdbms/bin/
$ ./DMMONITOR_AUTO start
- 在普通监视器窗口输入 : exit
10 恭喜搭建完成
更多推荐
所有评论(0)