达梦数据库数据文件迁移操作流程
1.检查评估新挂载目录是否能存放得下所有的数据文件。
##1. 停止数据库服务。
cd /opt/dm8/bin
./DmServiceDMDB stop #注意停止后检查进程是否存在。ps -ef|grep dmserver
2.拷贝达梦数据文件。
cp -r /dmdata /newdata/
3.使用dmctlcvt程序转换控制文件为文本文件,修改文本文件。
cd /opt/dm8/bin
./dmctlcvt TYPE=1 SRC=/newdata/dmdata/data/DMDB/dm.ctl DEST=/home/dmdba/dmctl.txt
DMCTLCVT V8
convert ctl to txt success!
#修改对应的数据文件的路径为新的路径。
fil_path=/dmdata/data/DMDB/TBS01.dbf
#修改为
fil_path=/newdata/dmdata/data/DMDB/TBS01.dbf
#注意所有的度需要修改到位
4.使用dmctlcvt程序转换文本文件为控制文件。
./dmctlcvt TYPE=2 DEST=/newdata/dmdata/data/DMDB/dm.ctl SRC=/home/dmdba/dmctl.txt
DMCTLCVT V8
convert ctl to txt success!
5.修改dm.ini中数据文件的路径,修改数据库启动服务脚本中dm.ini的路径。
#主要是文件中_PATH的地方。一般位于文件头部。
CTL_PATH = /dmdata/data/DMDB/dm.ctl
修改为
CTL_PATH = /newdata/dmdata/data/DMDB/dm.ctl
6.重命名原来的数据文件目录,防止修改不到位,启动到原来实例导致数据错乱。待数据库运行稳定一段时间后再删除。
mv /dmdata/data /dmdata/data_0913
7.修改启动脚本dm.ini路径为新的路径后启动数据库服务。
cd /opt/dm8/bin
vim DmServiceDMDB
INI_PATH=“/dmdata/data/DMDB/dm.ini”
#修改为
INI_PATH=“/newdata/dmdata/data/DMDB/dm.ini”
#启动实例
./DmServiceDMDB start