如何在DM7中构建数据卫士

分类:编程技术 时间:2024-02-20 16:03 浏览:0 评论:0
0
本文主要介绍如何在DM7中构建Data Guard。介绍的很详细,有一定的参考价值。感兴趣的朋友一定要读一下!

Data Guardian(DG)
环境说明
以下机器已预先安装了DM软件,安装路径为/dm7,执行程序保存在/dm7/bin中目录,数据存放路径为/DM7/DATA

 机器初始状态操作系统名称 IP 地址 19C1 10.13.13.141 (外部) 主库 DM1 Redhat 6.7 10.10.10.141 (MAL 内部) ) 19C2 10.13.13.142(外部)10.10。 10.142(mal 内部)备份数据库 dm2 w_port mal_host mal_port mal_dw_portdm1 5236 5239 10.10.10.141   5237 5238dm2 5236 5239 10.10.10.142 5237 5238

数据准备
将主数据库机上的数据库初始化到目录/dm7/data:

[dmdba@19c1 bin]$ ./dminit path=/dm7/data db_name=DAMENG instance_name=DM1 port_num=5236 page_size=8 charset=0initdb V7.1.6.46-Build(2023.02.08-89107)ENTdb 版本:0x7000afile dm.key 未找到,使用默认许可证!许可证将于 2023-06-17 14 天后过期日志文件路径:/ dm7/data/DAMENG/DAMENG01.log日志文件路径:/dm7/data/DAMENG/DAMENG02.log写入目录[/dm7/data/DAMENG]。创建dm数据库成功。 2023-06-03 02:55:43

注册服务用于启动数据库

[root@19c1 root]# ./dm_service_installer.sh -i /dm7/data/ DAMENG/dm.ini -p DM1 -t dmserverln -s '/usr/lib/systemd/system/DmServiceDM1.service' '/etc/systemd/system/multi-user.target.wants/DmServiceDM1.service'创建完成服务(DmServiceDM1)

正常启动数据库并正常关闭

[root@19c1 root]# service DmServiceDM1 start重定向到/bin/systemctl start DmServiceDM1.service[root@19c1根]# ps -ef | grep dmserverdmdba 21312 1 14 02:59 ? 00:00:03 /dm7/bin /dmserver /dm7/data/DAMENG/dm.ini -noconsoleroot 21536 18668 0 03:00 pts/2 00:00:00 grep --color=auto dmserver[dmdba@19c1 bin]$ ./disql SYSDBA/SYSDBAServer[LOCALHOST:5236]:模式正常,状态为openlogin 使用时间: 5.903(ms)disql V7.1.6.46-Build(2023.02.08-89107) ENTConnected to: DM 7.1.6.46SQL> exit[root@19c1 root]# service DmServiceDM1 stop重定向到 /bin/systemctl stop DmServiceDM1.service

ARCH_INI=1(打开存档)
MAL_INI=1 (打开MAL配置)
DW_PORT=5239(DW端口)

配置dmmal.ini文件
配置MAL系统。每个主备数据库的dmmal.ini配置必须完全一致,MAL_HOST使用内网IP,dm.ini中的MAL_PORT和PORT_NUM使用不同的端口值。 MAL_DW_PORT是每个实例对应的守护进程之间以及守护进程与监视器之间的通信端口。配置如下:

[dmdba@19c1 DAMENG]$ vi dmmal.iniMAL_CHECK_INTERVAL = 5MAL_CONN_FAIL_INTERVAL = 5[MAL_INST1]MAL_INST_NAME = DM1MAL_HOST = 10.10.10.141MAL_PORT = 5237MAL_INST_HOST = 10。13.13.141MAL_INST_PORT = 5236MAL_DW_PORT = 5238[MAL_INST2]MAL_INST_NAME = DM2MAL_HOST = 10.10.10.142MAL_PORT = 5237MAL_INST_HOST = 10.13.13.142MAL_INST_ PORT = 5236MAL_DW_PORT = 5238

配置dmarch.ini
修改dmarch .ini 配置本地归档和实时归档。除本地归档外,其他归档配置项中的ARCH_DEST表示实例处于主模式时需要同步归档数据的目标实例名称。当前实例DM1为主库,需要同步数据到DM2(实时备库),因此实时归档的ARCH_DEST配置为DM2。

[dmdba@19c1 DAMENG]$ vi dmarch.ini[ARCHIVE_REALTIME]ARCH_TYPE = REALTIMEARCH_DEST = DM2[ARCHIVE_LOCAL1]ARCH_TYPE = LOCALARCH_DEST = /dm7/data/DAMENG/archARCH_FILE_SIZE = 128ARCH_SPACE_LIMIT = 0
< p>配置dmwatcher.ini
修改dmwatcher.ini配置daemon进程,配置为全局daemon类型,并使用自动切换模式。

[dmdba@19c1 DAMENG]$ vi dmwatcher.ini[GRP1]DW_TYPE = GLOBALDW_MODE = AUTODW_ERROR_TIME = 10INST_RECOVER_TIME = 60INST_ERROR_TIME = 10INST_OGUID = 453331INST_INI = /dm7/data/DAMENG/dm.iniINST _AUTO_RESTART = 1INST_STARTUP_CMD = /dm7 /bin/dmserverRLOG_SEND_THRESHOLD = 0RLOG_APPLY_THRESHOLD = 0

配置dmwatcher.ctl
同一守护进程组必须使用相同的dmwatcher.ctl。因此,只需使用dmctlcvt工具生成dmwatcher.ctl文件,然后将其复制到各个数据库目录即可。配置完dmwatcher.ini后,使用dmctlcvt工具生成dmwatcher.ctl:(特别注意,DEST目录是DAMENG的上层目录,否则不会生成控制文件)

[dmdba @19c1 bin]$ ./dmctlcvt TYPE=3 SRC=/dm7/data/DAMENG/dmwatcher.ini DEST=/dm7/dataDMCTLCVT V7.1.6.46-Build(2023.02.08-89107)ENTtxt转ctl成功!< /pre>

/dm7/data下会生成一个GRP1目录目录下,GRP1目录下会生成dmwatcher.ctl控制文件

[root@19c1 data]# ls -lrttotal 4drwxr-xr-x 8 dmdba dinstall 4096 Jun 3 03:44 DAMENGdrwxr-xr -x 2 dmdba dinstall 26 Jun 3 03:53 GRP1[root@19c1 data]# cd GRP1[root@19c1 GRP1]# ls -lrttotal 4-rw-r--r-- 1 dmdba dinstall 512 Jun 3 03:53 dmwatcher.ctl

将生成的dmwatcher.ctl文件复制到数据文件目录/dm7/data/DAMENG中。

将主数据库相关文件传输到备份机:

[dmdba@19c1 dm7]$ scp -r data/ dmdba@10.13.13.142:/dm7/的真实性无法建立主机“10.13.13.142 (10.13.13.142)”。ECDSA 密钥指纹为 7f:1f:9a:0f:8b:d1:e0:17:32:08:12:73:d8:1d:9c :da 。您确定要继续连接吗(是/否)? yes警告:将“10.13.13.142”(ECDSA)永久添加到已知主机列表中。dmdba@10.13.13.142的密码:dminit20230603025444.log 100% 783 0.8 KB/s 00:00sqllog.ini 100% 479 0.5KB/s 00:00dm.ctl 100% 5120 5.0KB/秒 00:00DAMENG01.log 100% 256MB 256.0MB/s 00:01DAMENG02.log 100% 256MB 128.0MB/s 00:02dm_20230603025543_320471.ctl 100% 5120 5.0KB/s 00:00dm_202306 03030017_373808.ctl 100% 5120 5.0KB/秒 00:00系统.DBF 100% 21MB 21.0MB/s 00:01dm_service.prikey 100% 633 0.6KB/s 00:00MAIN.DBF 100% 128MB 128.0 MB/s 00:01ROLL.DBF 100% 128MB 128.0MB/s 00:01dminst.sys 100% 220 0.2KB/秒 00:00TEMP.DBF 100% 10MB 10.0MB/秒 00:00rep_conflict.log 100% 12 0.0KB/秒 00:00dm.ini 100% 40KB 39.8KB/秒 00:00dmmal.ini 100% 558 0.5KB/s 00:00dmarch.ini 100% 367 0.4KB/s 00:00dmwatcher.ini 100% 615 0.6KB/s 00 :00dmwatcher.ctl 100% 512 0.5KB/s 00:00

修改备机相关配置

修改dm.iniINSTANCE_NAME = DM2

修改dmarch.ini

ARCH_DEST = DM1

其中其中dmwatcher.ini、dmmal.ini、dmwatcher.ctl与主库一致

二:开始挂载状态并设置oguid
主库

[dmdba@ 19c1 bin]$ ./dmserver /dm7/data/DAMENG/dm.ini 挂载文件 dm.key 未找到,使用默认许可证!版本信息:开发使用普通 os_malloc 而不是 HugeTLB 使用普通 os_malloc 而不是 HugeTLBDM 数据库服务器 x64 V7.1.6.46-Build(2023.02.08 -89107)ENT 启动...许可证将在 14 天后过期2023-06-17ckpt lsn: 32981SYSTEM IS READY.[dmdba@19c1 bin]$ ./disql SYSDBA/SYSDBAServer[LOCALHOST:5236]:模式正常,状态为mountlogin 使用时间: 6.020(ms)disql V7.1.6.46 -Build(2023.02.08-89107)ENTConnected to: DM 7.1.6.46SQL> sp_set_oguid(453331);DMSQL执行成功使用时间: 38.995(ms).执行id为1.SQL>退出

备用数据库

[dmdba@19c2 bin]$ ./dmserver /dm7/data/DAMEng/dm.ini 挂载文件 dm.Key 未找到,使用默认许可证!版本信息:开发使用 NORMAL OS_MALLOC 而不是 Hugetlbuse Normal OS_Malloc 而不是 H UGETLBDM 数据库服务器 X64 V7.1.6.46-Build (2023.02.08-89107) ENT 启动。 ..许可证将于 14 天后于 2023-06-17 到期 ckpt lsn: 32981SYSTEM IS READY.[dmdba@19c2 bin]$ ./disql SYSDBA/SYSDBAServer[LOCALHOST:5236]:模式正常,状态为mountlogin 使用时间:6.005(ms)disql V7.1.6.46-Build(2023.02.08-89107)ENT连接到:DM 7.1.6.46SQL> sp_set_oguid(453331);DMSQL执行成功使用时间:46.333 (多发性硬化症)。执行id为1。

注册服务用于启动数据库

[root@19c2 root]# ./dm_service_installer.sh -i /dm7/data/DAMENG/dm .ini -p DM2 -t dmserverln -s '/usr/lib/systemd/system/DmServiceDM2.service' '/etc/systemd/system/multi-user.target.wants/DmServiceDM2.service'已完成创建服务( DmServiceDM2)

三:打开数据库
打开主数据库作为primary

SQL>alterdatabaseprimary;执行成功使用时间:37.838(ms)。执行id为0。

备用数据库在standby中打开

SQL> alter databasestandby;执行成功使用时间:39.682(ms)。 execute id为0。

四:启动守护进程
在各主备库上启动守护进程:
主库

[dmdba@19c1 bin]$ ./dmwatcher /dm7/data/DAMENG/dmwatcher.iniDMWATCHER[2.1] V7.1.6.46-Build(2023.02.08-89107)ENTDMWATCHER[2.1] 已准备就绪

备用数据库

[dmdba@19c2 bin]$ ./dmwatcher /dm7/data /DAMENG/dmwatcher.iniDMWATCHER[2.1] V7.1.6.46-Build(2023.02.08-89107)ENTDMWATCHER[2.1] IS READY 5:检查主从数据库file_lsn和cur_lsn是否一致。主库
SQL> select file_LSN, cur_LSN from v$rlog;LINEID FILE_LSN CUR_LSN------------- -------------- ----------------------------------1 34412 34412使用时间:1.203(ms)。执行 id 为 6 。

备用数据库

SQL> select file_LSN, cur_LSN from v$rlog;LINEID FILE_LSN CUR_LSN---------- ----- ---- ---------- ----------------1 34412 34412使用时间:1.228(毫秒)。执行id为3。

测试数据同步
主库:

SQL>create table t1(id int);执行成功使用时间:18.410(ms)。执行id为7.SQL> insert into t1 values (1);影响行1used time:0.890(毫秒)。执行id为8.SQL> commit;执行成功使用时间:6.026(ms)。执行 id 为 9.SQL> select file_LSN, cur_LSN from v$rlog;LINEID FILE_LSN CUR_LSN-------------------------------------------- ----------- --------------------1 34443 34443使用时间:0.340(毫秒)。执行id为10。

备用数据库:

SQL> select file_LSN, cur_LSN from v$rlog;LINEID FILE_LSN CUR_LSN-------------- -------------------------------- ----------------1 34443 34443使用时间:0.363(ms)。执行 id 为 4.SQL> select * from t1;LINEID ID---------- -----------1 1 使用时间: 1.213(ms)。 execute id为5。

六:配置监控(基本要求,安装dm7软件)
由于主库和实时备库的守护进程配置为自动切换模式,这里选择配置确认监视器。与普通监视器相比,除了相同的命令支持外,确认监视器还可以自动通知实时情况当主数据库发生故障时,tandby数据库接替作为新的主数据库,并具有自动故障处理功能。
修改dmmonitor.ini配置,确认监控,其中MON_DW_IP中的IP和PORT与dmmal.ini中的MAL_HOST和MAL_DW_PORT配置项一致。

[dmdba@ora19c 数据]$ vi dmmonitor.iniMON_DW_CONFIRM = 1MON_LOG_PATH = /dm7/data/logMON_LOG_INTERVAL = 60MON_LOG_FILE_SIZE = 32MON_LOG_SPACE_LIMIT = 0[GRP1]MON_INST_OGUID = 453331MON_DW_IP = 10.10。 10.141:5238MON_DW_IP = 10.10.10.142 :5238

启动监控:

[dmdba@ora19c bin]$ ./dmmonitor /dm7/data/dmmonitor.ini[monitor] 2023-06-03 09:18:20 : DMMONITOR[2.1] V7.1.6.46-Build(2023.02.08 -89107)ENT[监视器] 2023-06-03 09:18:20: DMMONITOR[2.1] 已准备就绪。[监视器] 2023-06-03 09 :18:20: 收到来自 (DM1)WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN SSLSN SLSN2023-06-03 04:35:58 OPEN OK DM1 OPEN PRIMARY VALID 2 34443 34443 34443 的消息34443[监视器] 2023-06-03 09:18:20:收到来自 (DM2)WTIMEWSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN SSLSN SLSN2023-06-03 04:35:58 OPEN OK DM2 OPEN STANDBY VALID 2 34443 344 的消息43 34443 34443

以上就是《如何打造DM7数据“卫士”》这篇文章的全部内容,感谢您的阅读!希望分享的内容对大家有所帮助。更多相关知识,欢迎关注行业资讯频道!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 如何在DM7中构建数据卫士

用户评论