当前数据库实例在/opt/dmdbms/data/DAMENG目录下
需要移动到/data/DAMENG目录下
1. 停止数据库服务
[root@localhost ~]# systemctl stop DmServiceDM.service
2. 将原有的数据库实例复制到新的路径下
[dmdba@localhost ~]$ cp -r /opt/dmdbms/data/DAMENG/ /data/
3. 修改dm.ini文件
将dm.ini文件中原有的/opt/dmdbms/data/DAMENG路径都更改为/data/DAMENG
[dmdba@localhost ~]$ sed -i ‘s//opt/dmdbms/data/DAMENG//data/DAMENG/g’ /data/DAMENG/dm.ini
4. 换控制文件为文本文件
[dmdba@localhost ~]$ /opt/dmdbms/bin/dmctlcvt help
[dmdba@localhost ~]$ /opt/dmdbms/bin/dmctlcvt TYPE=1 SRC=/data/DAMENG/dm.ctl DEST=/data/DAMENG/dm.ctl.txt
5. 修改dm.ctl.txt文件
将dm.ctl.txt文件中原有的/opt/dmdbms/data/DAMENG路径都更改为/data/DAMENG
[dmdba@localhost ~]$ sed -i ‘s//opt/dmdbms/data/DAMENG//data/DAMENG/g’ /data/DAMENG/dm.ctl.txt
6. 转换文本文件为控制文件
[dmdba@localhost ~]$ /opt/dmdbms/bin/dmctlcvt TYPE=2 SRC=/data/DAMENG/dm.ctl.txt DEST=/data/DAMENG/dm.ctl
7. 修改DmService服务文件中的INI_PATH
[dmdba@localhost ~]$ vi /opt/dmdbms/bin/DmServiceDM
DM_HOME=“/opt/dmdbms”
INI_PATH=“/data/DAMENG/dm.ini”
DCR_INI_PATH=%DCR_INI_PATH%
DPC_MODE=%DPC_MODE%
8. 启动数据库服务
[root@localhost ~]# systemctl start DmServiceDM.service
控制文件说明
每个数据库实例都有一个名为dm.ctl的控制文件。控制文件是一个二进制文件,它记录了数据库必要的初始信息,其中主要包含以下内容:
1.数据库名称;
2.数据库服务器模式;
3.OGUID 唯一标识;
4.数据库服务器版本;
5.数据文件版本;
6.数据库的启动次数;
7.数据库最近一次启动时间;
8.表空间信息,包括表空间名,表空间物理文件路径等,记录了所有数据库中使用的表空间,数组的方式保存起来;
9.控制文件校验码,校验码由数据库服务器在每次修改控制文件后计算生成,保证控制文件合法性,防止文件损坏及手工修改。
达梦社区地址
https://eco.dameng.com