达梦数据守护集群安装和测试命令

前提操作系统检查完毕,数据库软件安装完毕

===============主库操作:
创建数据库实例
dminit PATH=/dm8/dmdbms/data DB_NAME=TEST INSTANCE_NAME=TEST1 PORT_NUM=5236
/dm8/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/dmdbms/data/TEST/dm.ini -p TEST
dmserver /dm8/dmdbms/data/TEST/dm.ini

主库开启归档
alter database mount;
alter database add archivelog 'DEST=/dm8/dmarch,TYPE=local,FILE_SIZE=1024,space_limit=10240';
alter database archivelog;
alter database open;
select arch_mode from v$database;

备份数据库
backup database backupset '/dm8/backup/backup1' ;

修改dm.ini参数
INSTANCE_NAME = TEST1
#INSTANCE_NAME = TEST2
PORT_NUM = 5236  #数据库实例监听端口
ALTER_MODE_STATUS = 0  #不允许手工方式修改实例模式/状态
ENABLE_OFFLINE_TS = 2  #不允许备库 OFFLINE 表空间
MAL_INI = 1  #打开 MAL 系统
ARCH_INI = 1  #打开归档配置

修改dmarch.ini参数  
    2节点都配置,ARCH_DEST分写写对方的实例。比如当前实例 TEST1 是主库,则ARCH_DEST 配置为 TEST2。

ARCH_WAIT_APPLY = 0
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME  #实时归档类型
ARCH_DEST = TEST2  #实时归档目标实例名

[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /dm8/dmarch #本地归档文件存放路径
ARCH_FILE_SIZE = 128   #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT = 0  #单位 Mb,0 表示无限制,范围 1024~4294967294M

配置 dmmal.ini
    2节点配置配置一样。具体如下:

MAL_CHECK_INTERVAL = 5             #MAL 链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 5         #判定 MAL 链路断开的时间

[MAL_INST1]
MAL_INST_NAME = TEST1         #实例名,和 dm.ini 中的 INSTANCE_NAME 一致
MAL_INST_HOST = 10.10.10.7         #实例的对外服务 IP 地址
MAL_HOST = 100.0.0.7             #MAL 系统监听 TCP 连接的 IP 地址
MAL_INST_PORT = 5236                 #实例的对外服·务端口,和 dm.ini 中的 PORT_NUM 一致
MAL_INST_DW_PORT = 5237        #实例监听守护进程TCP连接的端口
MAL_PORT = 5238                     #MAL 系统监听 TCP 连接的端口
MAL_DW_PORT = 5239              #实例对应的守护进程监听 TCP 连接的端口

[MAL_INST2]
MAL_INST_NAME = TEST2
MAL_INST_HOST = 10.10.10.8
MAL_HOST = 100.0.0.8
MAL_INST_PORT = 5236
MAL_INST_DW_PORT = 5237
MAL_PORT = 5238
MAL_DW_PORT = 5239

配置 dmwatcher.ini
    2节点都配置。守护进程使用AUTO,自动切换模式。

[GRP1]
DW_TYPE = GLOBAL                         #全局守护类型
DW_MODE = AUTO                         #自动切换模式
DW_ERROR_TIME = 10                         #远程守护进程故障认定时间
INST_RECOVER_TIME = 60                     #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 10                        #本地实例故障认定时间
INST_OGUID = 45331                      #守护系统唯一 OGUID 值
INST_INI = /dm8/dmdbms/data/TEST/dm.ini           #dm.ini 配置文件路径
INST_AUTO_RESTART = 1                       #打开实例的自动启动功能
INST_STARTUP_CMD = /dm8/bin/dmserver       #命令行方式启动
RLOG_SEND_THRESHOLD = 0                   #指定主库发送日志到备库的时间阀值,默认关闭
RLOG_APPLY_THRESHOLD = 0                   #指定备库重演日志的时间阀值,默认关闭

/dm8/script/root/dm_service_installer.sh -t dmwatcher -watcher_ini /dm8/dmdbms/data/TEST/dmwatcher.ini -p TEST

复制主库所有文件

scp -r /dm8/dmdbms/* 10.10.10.8:/dm8/dmdbms

===============备库操作:
dmrman CTLSTMT="RESTORE DATABASE '/dm8/dmdbms/data/TEST/dm.ini' FROM BACKUPSET '/dm8/backup/backup1'"
dmrman CTLSTMT="RECOVER DATABASE '/dm8/dmdbms/data/TEST/dm.ini' FROM BACKUPSET '/dm8/backup/backup1'"
dmrman CTLSTMT="RECOVER DATABASE '/dm8/dmdbms/data/TEST/dm.ini' UPDATE DB_MAGIC"


备库修改dm.ini
INSTANCE_NAME = TEST2

修改dmarch.ini参数
ARCH_DEST = TEST1  #实时归档目标实例名


/dm8/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/dmdbms/data/TEST/dm.ini -p TEST
/dm8/script/root/dm_service_installer.sh -t dmwatcher -watcher_ini /dm8/dmdbms/data/TEST/dmwatcher.ini -p TEST


===============监视器操作:

在监控节点的/dm/dmdbms/data/TEST/目录下创建并修改 dmmonitor.ini 配置确认监视器,其中 MON_DW_IP 中的 IP 和 PORT 和dmmal.ini 中的 MAL_HOST 和 MAL_DW_PORT 配置项保持一致。

MON_DW_CONFIRM = 1 #确认监视器模式
MON_LOG_PATH = /dm8/dmdbms/log #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间

[GRP1]            #组名需要跟dmwatcher.ini配置文件中一致
MON_INST_OGUID = 45331  #组 GRP1 的唯一 OGUID 值
MON_DW_IP = 100.0.0.7:5239
MON_DW_IP = 100.0.0.8:5239

/dm8/script/root/dm_service_installer.sh -t dmmonitor -monitor_ini /dm8/dmmonitor.ini -p Monitor


===============配置数据库模式:
两个数据库启动到mount模式
 dmserver /dm8/dmdbms/data/TEST/dm.ini mount


设置 OGUID,在主备库分别执行:
sp_set_oguid(45331);

修改数据库模式
主库
alter database primary;
备库:
alter database standby;

修改完成后,停止数据库

启动两台数据库,此时数据库应该是mount状态
DmServiceTEST start
检查数据库状态
disql SYSDBA/SYSDBA
select status$ from v$instance;

启动守护服务
DmWatcherServiceTEST start

启动监视器
DmMonitorServiceMonitor start

进入监视器
dmmonitor /dm8/dmmonitor_manual.ini

监视器命令:

list                查看守护进程配置信息
show global info        查看实例组信息
tip                查看系统运行状态
login                登录监视器
logout                登出监视器
choose switchover GRP1        主机正常,查看可切换为主机的实例
switchover GRP1.TEST2        主机正常,使用指定组切换为主库
choose takeoverGRP1        主机故障,查看可切换为主机的实例
takeoverGRP1.TEST2        主机故障,使用指定组切换为主库
choose takeover force GRP1    强制切换,查看可切换为主机的实例
takeover force GRP1.TEST2    强制切换,使用指定组切换为主库

==主备同步测试

主库:
disql SYSDBA/SYSDBA
create table TEST as select * from sysobjects;

备库:
disql SYSDBA/SYSDBA
select count(1) from TEST;

启动和停止

    1) 如果启动了确认监视器,先关闭确认监视器(防止自动接管)
    2) 关闭主库守护进程(防止重启实例)
    3) 关闭备库守护进程(防止重启实例)


数据守护配置:
jdbc:dm://DM_DW
读写分离配置:
jdbc:dm://DM_RWC?rwSeparate=1&rwPercent=25

达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值