目录
一、DM8下载
下载链接:https://www.dameng.com/DM8.html
二、集群部署规划
IP及机器规划:
主机名称 | IP | 数据库名称 | 数据库实例名称 |
---|---|---|---|
dmdb01 | 192.168.78.101 | DAMENG | DMSERVER01 |
dmdb02 | 192.168.78.102 | DAMENG | DMSERVER02 |
数据库端口规划
主机名称 | 实例名称 | 实例端口 | MAL 系统监听 TCP 连接的端口 | 实例本地守护进程监听TCP端口 | 实例监听守护进程端口 |
---|---|---|---|---|---|
dmdb01 | DMSERVER01 | 5236 | 55101 | 65101 | 45101 |
dmdb02 | DMSERVER02 | 5236 | 55121 | 65121 | 45121 |
数据库安装目录规划
主机名称 | 数据库安装目录 | 数据文件目录 | 数据备份路径 | 数据备份路径 |
---|---|---|---|---|
dmdb01 | /home/dmdba/dm/dmdbms | /home/dmdba/dbdata/dmdata | /home/dmdba/dbbak/dmbak | /home/dmdba/dbarch/dmarch |
dmdb02 | /home/dmdba/dm/dmdbms | /home/dmdba/dbdata/dmdata | /home/dmdba/dbbak/dmbak | /home/dmdba/dbarch/dmarch |
三、数据库安装
数据库安装可参考:链接: DM8安装部署
四、主备集群配置
初始化实例
两台机器都需要完成实例的初始化
dmdb01
su - dmdba
dminit path= /home/dmdba/dbdata/dmdata page_size=32 extent_size=16 log_size=2048 db_name=DAMENG instance_name=DMSERVER01
dmdb02
su - dmdba
dminit path= /home/dmdba/dbdata/dmdata page_size=32 extent_size=16 log_size=2048 db_name=DAMENG instance_name=DMSERVER02
脱机备份dmdb01数据库
dmdb01
cd /home/dmdba/dm/dmdbms/bin
./dmrman use_ap=2
backup database '/home/dmdba/dbdata/dmdba/DAMENG/dm.ini' backupset '/home/dmdba/dbbak/dmbak/bakfull';
exit
dmdb01数据备份脱机还原至dmdb02数据库
dmdb02
cd /home/dmdba/dm/dmdbms/bin
./dmrman use_ap=2
restore database '/home/dmdba/dbdata/dmdata/DAMENG/dm.ini' from backupset '/home/dmdba/dbbak/dmbak/bakfull';
recover database '/home/dmdba/dbdata/dmdata/DAMENG/dm.ini' from backupset '/home/dmdba/dbbak/dmbak/bakfull';
recover database '/home/dmdba/dbdata/dmdata/DAMENG/dm.ini' update db_magic;
exit
检查数据一致性,dmdb01 & dmdb02
cd /home/dmdba/dm/dmdbms/bin
./dmserver /home/dmdba/dbdata/dmdata/DAMENG/dm.ini mount
./disql SYSDBA/SYSDBA
select file_LSN, cur_LSN from v$rlog;
quit;
修改配置参数
修改dm.ini
dmdb01
vi /home/dmdba/dbdata/dmdata/DAMENG/dm.ini
INSTANCE_NAME = DMSERVER01
MAL_INI = 1
ARCH_INI = 1
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
dmdb02
vi /home/dmdba/dbdata/dmdata/DAMENG/dm.ini
INSTANCE_NAME = DMSERVER02
MAL_INI = 1
ARCH_INI = 1
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
修改dmarch.ini
dmdb01
vi /home/dmdba/dbdata/dmdata/DAMENG/dmarch.ini
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER02
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /home/dmdba/dbarch/dmarch
ARCH_FILE_SIZE = 512
ARCH_SPACE_LIMIT = 10240
dmdb02
vi /home/dmdba/dbdata/dmdata/DAMENG/dmarch.ini
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER01
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /home/dmdba/dbarch/dmarch
ARCH_FILE_SIZE = 512
ARCH_SPACE_LIMIT = 10240
添加配置文件dmmal.ini
dmdb01 & dmdb02
vi /home/dmdba/dbdata/dmdata/DAMENG/dmmal.ini
MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = DMSERVER01
MAL_HOST = 192.168.78.101
MAL_PORT = 55101
MAL_INST_HOST = 192.168.78.101
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMSERVER02
MAL_HOST = 192.168.78.102
MAL_PORT = 55121
MAL_INST_HOST = 192.168.78.102
MAL_INST_PORT = 5236
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121
添加配置文件dmwatcher.ini
dmdb01 & dmdb02
vi /home/dmdba/dbdata/dmdata/DAMENG/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 453331
INST_INI = /home/dmdba/dm/dmdbms/bin/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /home/dmdba/dm/dmdbms/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0
##以 mount 方式启动数据库实例
dmdb01
cd /home/dmdba/dm/dmdbms/bin
./dmserver /home/dmdba/dbdata/dmdata/DAMENG/dm.ini mount
./disql SYSDBA/SYSDBA
sp_set_oguid(453331);
alter database primary;
dmdb02
cd /home/dmdba/dm/dmdbms/bin
./dmserver /home/dmdba/dbdata/dmdata/DAMENG/dm.ini mount
./disql SYSDBA/SYSDBA
sp_set_oguid(453331);
alter database standby;
启动守护进程
dmdb01 & dmdb02
cd /home/dmdba/dm/dmdbms/bin
./dmwatcher /home/dmdba/dbdata/dmdata/DAMENG/dmwatcher.ini
添加dmmonitor.ini配置文件,并启动监视器
dmdb01
vi /home/dmdba/dbdata/dmdata/DAMENG/dmmonitor.ini
MON_DW_CONFIRM = 0
MON_LOG_PATH = /home/dmdba/dm/dmdbms/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
[GRP1]
MON_INST_OGUID = 453331
MON_DW_IP = 192.168.78.101:65101
MON_DW_IP = 192.168.78.102:65121
cd /home/dmdba/dm/dmdbms/bin
./dmmonitor /home/dmdba/dbdata/dmdata/DAMENG/dmmonitor.ini
show
五、验证主备集群同步
dmdb01
cd /home/dmdba/dm/dmdbms/bin
./disql SYSDBA/SYSDBA
create table test_01 (a int, b int);
insert into test_01 values (1,1);
insert into test_01 values (2,2);
commit;
select * from test_01;
dmdb02
cd /home/dmdba/dm/dmdbms/bin
./disql SYSDBA/SYSDBA
select * from test_01;
- 达梦数据库社区地址:https://eco.dameng.com