注册
达梦数据库-数据库主备集群更改实例目录及相关目录步骤-记录总结
专栏/技术分享/ 文章详情 /

达梦数据库-数据库主备集群更改实例目录及相关目录步骤-记录总结

田WJ 2026/05/28 163 0 0
摘要

1达梦数据库-数据库主备集群更改实例目录及相关目录步骤-记录总结

1.1常见需求

当前数据库实例所在磁盘性能较差或空间不足,需格式化性能较好空间足的新磁盘并挂载,挂载到原目录或者新目录,然后把数据库实例目录移动到新磁盘。

1.2流程步骤

(1) 检查确认数据库实例相关的各种路径,如数据库系统表空间初始路径、自定义表空间数据文件路径、归档路径、跟踪日志路径、备份作业备份路径、审计日志路径(如果开启了审计);
(2) 格式化磁盘并挂载;
(3) 停止应用系统,对数据库进行联机在线物理热备份;
(4) 停止数据库集群,对主备数据库节点涉及文件和目录(包括实例目录、归档日志目录、自定义表空间目录)进行操作系统级别拷贝备份,如果操作过程中出现问题或其它特殊需求,可以快速回退到操作前状态。
(5)新磁盘挂载到原同名目录
1)主备数据库节点操作,数据库实例拷贝到新目录;
2)主备数据库节点操作,原目录修改名称或备份,卸载挂载原实例目录
3)主备数据库节点操作,新磁盘卸载,重新挂载到同原名目录;
4)启动数据库集群;
5)登录数据库检查状态和路径情况;
6)确认无误后,全备份,然后清除主备库机上操作过程中各种备份文件。
(6)新磁盘挂载到新目录名
1)主备数据库节点操作,数据库实例拷贝到新目录;
2)主备库修改新目录下实例dm.ini中的路径相关;
3)主备库修改新目录下实例dmwatcher.ini中路径相关;
4)主备库修改新目录下实例dmmal.ini中路径相关;
5)主备库修改新目录下实例sqllog.ini中路径相关;
6)主备库修改新目录下实例dmarch.ini中归档路径相关;
7)主备库修改新目录下实例控制文件dm.ctl中路径相关;
8)主备库修改DmServiceDAMENG命令工具中路径相关;
9)主备库修改DmWatcherServiceGRP1命令工具中路径相关;
10)启动数据库主备集群,启动确认监视器服务;
11)登录数据库,修改备份作业路径相关;
12)登录数据库,检查状态和路径修改情况,检查表数据情况,数据库全备;
13)确认无误后,全备份,然后根据实际清除主备库机上操作过程中各种备份文件。

1.3示例初始环境

数据库集群GRP1
主库IP端口 192.168.118.236 5237
备库IP端口 192.168.118.237 5237
监视器机器 192.168.118.238
安装目录:/opt/dmdbms/bin
实例目录:/data/dmdata/DAMENG
归档目录:/data/dmarch/DAMENG
备份路径:/data/dmbak/DAMENG/bak/
用户和自定义表空间;TEST用户默认TEST表空间,路径/opt/tbspc/test.DBF
创建测试表及测试数据,查询:
TEST.t1 ,CALL SP_TABLEDEF(‘TEST’, ‘T1’);
1.png

1.4lvm方式挂载新磁盘示例

pvcreate /dev/sdc
pvdisplay
vgcreate dbdata /dev/sdc
vgdisplay
lvcreate -l +100%free -n lv_data dbdata
lvdisplay
mkfs.xfs /dev/dbdata/lv_data
挂载磁盘到/datas目录
mkdir /datas
blkid
vi /etc/fstab
UUID=xxx /datas xfs defaults 0 0
mount -a
主备机过程截图
2.png

1.5数据库集群各种查询信息

查询确认数据库中各种相关路径情况:
本示例中只涉及 /data 和/opt/tbspc/
(1)数据库中各种路径梳理检查
–查询参数文件中路径设置
select PARA_NAME,PARA_VALUE from v$dm_ini where PARA_NAME like ‘%PATH’;
3.png
–查看表空间与数据文件对应关系

–检查归档文件路径

–检查是否开启跟踪日志
[dmdba@192 ~]$ cat /data/dmdata/DAMENG/sqllog.ini
4.png
–检查是否开启审计及审计日志相关
SELECT * FROM V$DM_INI WHERE PARA_NAME=‘ENABLE_AUDIT’;

select * from V$AUDIT_SPACE;

–检查备份作业文件路径
select * from SYSJOB.SYSJOBS;
select * from SYSJOB.SYSJOBSTEPS;
[dmdba@192 ~]$ cat /data/dmdata/DAMENG/sqllog.ini
6.png

1.6数据库备份

关闭应用系统,数据库进行在线联机物理热备份。
SP_DBMS_JOB_RUN(1779546714);
7.png

1.7关闭数据库集群

(1)监视器机器停止确认监视器服务
root用户执行 systemctl stop DmMonitorServiceGRP1.service

dmdba用户执行DmMonitorServiceGRP1 stop
(2)主备服务器停止守护服务
root用户执行systemctl stop DmWatcherServiceGRP1
或者
dmdba用户执行DmWatcherServiceGRP1 stop
(3)主备服务器停止数据库服务
root用户执行systemctl stop DmServiceDAMENG.service
或者
dmdba用户执行DmServiceDAMENG stop
8.png

1.8目录名称保持不变

挂载新磁盘后,实例目录放到新磁盘,挂载目录名称保持不变,这种相对简单。

1.8.1实例目录拷贝到新磁盘目录

–拷贝原实例目录/data下相关目录文件到/datas。
cp -r /data/dmbak /datas/
cp -r /data/dmdata /datas/
cp -r /data/dmarch /datas/
–拷贝TEST表空间数据文件目录
cp -r /opt/tbspc /opt/tbspc_bak

1.8.2实例目录更名及拷贝

多一份备份少一份数据操作风险。
–重命名原实例目录/data,保留操作前的状态,更改名称防止误操作,同时可以根据需要进行快速回退,回退时操作系统级别拷贝复制即可。
mv data data_bak
或者
–如果原磁盘挂载在/data目录下,则卸载/data
umount /data
–后续如果要挂载,可挂载到其它目录
mkdir /data_old
mount /dev/sdb1 /data_old --临时挂载,修改/etc/fstab永久生效。

1.8.3新磁盘重新挂载到/data目录

umount /datas
mv datas data
vi /etc/fstab
UUID=xxx /data xfs defaults 0 0
mount -a
df -h

1.8.4重新启动数据库集群

(1)主备服务器启动守护服务,启动守护服务后会自动拉起数据库服务
systemctl start DmWatcherServiceGRP1
(2)监视器机器启动非确认监视服务和确认监视器服务
systemctl start DmMonitorServiceGRP1

1.8.5检查数据库集群中各种路径修改情况和表相关信息

1.8.6确认无误后,全备份,然后根据实际情况清除主备库机上操作过程中各种备份文件。

1.9目录名称发生改变

数据库实例目录由/data更换到/datas。
数据库本地归档目录,备份目录,日志跟踪目录都放到/datas下。

1.9.1主备机-实例目录拷贝到新磁盘挂载目录下

(1)分别拷贝实例目录到新目录
chown -R dmdba:dinstall /datas
su - dmdba
cd data
cp -r * /datas/
(2)冷备份,防止误操作和根据特殊需求方便进行快速回退
多一份备份少一份数据操作风险。
–然后原目录更名
mv /data /databak
–原自定义TEST表空间数据文件目录拷贝备份
cp -r /opt/tbspc /opt/tbspc_bak
chown -R dmdba:dinstall /opt/tbspc_bak/

1.9.2主备机-配置文件和命令工具中更改路径

(1)修改主备库实例中dm.ini中的路径
su - dmdba
vi /datas/dmdata/DAMENG/dm.ini
9.png
(2)修改主备实例dmwatcher.ini中目录
vi /datas/dmdata/DAMENG/dmwatcher.ini
10.png
(3)修改主备实例dmmal.ini中目录
vi /datas/dmdata/DAMENG/dmmal.ini
11.png
(4)修改主备实例sqllog.ini中目录
vi /datas/dmdata/DAMENG/sqllog.ini
12.png
(5)修改主备实例dmarch.ini中归档目录
vi /datas/dmdata/DAMENG/dmarch.ini
13.png
(6)修改主备控制文件中目录
dmctlcvt TYPE=1 SRC=/datas/dmdata/DAMENG/dm.ctl DEST=/datas/dmdata/DAMENG/dmctl.txt
vi /datas/dmdata/DAMENG/dmctl.txt
cat /datas/dmdata/DAMENG/dmctl.txt |grep _path
dmctlcvt TYPE=2 SRC=/datas/dmdata/DAMENG/dmctl.txt DEST=/datas/dmdata/DAMENG/dm.ctl
14.png
(7)修改主备库DmServiceDAMENG中目录
vi /opt/dmdbms/bin/DmServiceDAMENG
cat /opt/dmdbms/bin/DmServiceDAMENG |grep data
15.png
(8)修改主备库DmWatcherServiceGRP1中目录
vi /opt/dmdbms/bin/DmWatcherServiceGRP1
cat /opt/dmdbms/bin/DmWatcherServiceGRP1 |grep data
16.png

1.9.3启动数据库集群服务

(1)主备机启动守护服务,守护服务启动后会自动拉起数据库服务
systemctl start DmWatcherServiceGRP1.service
17.png
(2)监视器机器启动非确认监视器,检查数据库状态无误后启动确认监视器服务
systemctl start DmMonitorServiceGRP1.service
18.png
1.9.4登录集群主库修改备份目录路径
(1)修改全备作业路径
call SP_JOB_CONFIG_START(‘bak_full’);
call SP_ALTER_JOB_STEP_EX(‘bak_full’, ‘bak_full’, 6, ‘01000000/datas/dmbak/DAMENG/bak’, 3, 1, 0, 0, NULL, 0, ‘’);
call SP_ALTER_JOB_STEP_EX(‘bak_full’, ‘bak_del’, 0, ‘CALL SF_BAKSET_BACKUP_DIR_ADD(’‘DISK’’,’’/datas/dmbak/DAMENG/bak’’);
CALL SP_DB_BAKSET_REMOVE_BATCH(’‘DISK’’,NOW()-15);’, 1, 1, 0, 0, NULL, 0, ‘’);
call SP_JOB_CONFIG_COMMIT(‘bak_full’);
(2)修改增量备备份作业路径
call SP_JOB_CONFIG_START(‘bak_inc’);
call SP_ALTER_JOB_STEP_EX(‘bak_inc’, ‘bak_inc’, 6, ‘11000000/datas/dmbak/DAMENG/bak|/datas/dmbak/DAMENG/bak’, 1, 3, 2, 6, NULL, 0, ‘’);
call SP_ALTER_JOB_STEP_EX(‘bak_inc’, ‘switch_bak_full’, 6, ‘01000000/datas/dmbak/DAMENG/bak’, 1, 1, 0, 0, NULL, 0, ‘’);
call SP_JOB_CONFIG_COMMIT(‘bak_inc’);

1.9.5检查数据库集群中各种路径修改情况和表相关信息

–参数文件中路径设置查询
–查看表空间与数据文件对应关系
–检查归档文件路径
19.png
–检查跟踪日志
–检查审计及审计日志相关
–检查表信息相关
20.png
21.png
22.png

1.9.6确认无误后,全备份,然后实际情况清除主备库机上操作过程中各种备份文件。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服