现将实例初始化到/dmdata03目录下
想要将已初始化好的修改该实例路径为/dmdata04下。
一定要先做好备份再修改路径。
1、打开归档并备份数据库
1.1 使用root用户创建新路径以及归档文件夹。
mkdir -p /dmdata03/dmarch
mkdir -p /dmdata03/dmbak
chown -R dmdba:dinstall /dmdata03
mkdir -p /dmdata04/dmarch
mkdir -p /dmdata04/dmbak
chown -R dmdba:dinstall /dmdata04
1.2 离线配置归档,备份数据库
配置 dm.ini,打开 ARCH_INI 参数 (将ARCH_INI的值改为1)
vi /dmdata/dmdb/dm.ini
ARCH_INI = 1 #打开归档配置
– 检查参数
grep -Ew “INSTANCE_NAME|PORT_NUM|ARCH_INI” /dmdata/dmdb/dm.ini
配置 dmarch.ini
vi /dmdata/dmdb/dmarch.ini
#归档空间限制以实际情况考虑 (实际配置中删除#后注释语句)
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST =/dmdata03/dmarch #本地归档文件存放路径
ARCH_FILE_SIZE = 2048 #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT =102400 #单位 Mb,0 表示无限制,范围 1024~2147483647M
停服务,做备份。
./DmServicedmdb stop
dmrman use_ap=2
backup database ‘/dmdata03/dmdb/dm.ini’ full backupset ‘/dmdata03/dmbak/bak20260716’;
check backupset ‘/dmdata03/dmbak/bak20260716’;
cp -r /dmdata03/dmdb /dmdata04/dmdb
直接把文件复制过来。
vi dm.ini,修改上面这部分的参数路径为现在使用的路径。
同时需要注意修改归档路径和备份作业路径。
vi dmarch.ini
备份作业的路径可以在数据库启动后,在管理工具修改。
使用dmctlcvt工具将控制文件dm.ctl转换为dmctl.txt
dmctlcvt type=1 src=/dmdata04/dmdb/dm.ctl dest=/dmdata04/dmdb/dmctl.txt
vi dmctl.txt , 修改数据文件路径,如果数据文件太多也可以编写脚本快速修改。
修改完成后,将原控制文件改名备份,再转换为新控制文件。
mv dm.ctl dm_bak.ctl
dmctlcvt type=2 src=/dmdata04/dmdb/dmctl.txt dest=/dmdata04/dmdb/dm.ctl
修改已注册服务的启动路径,或者注销服务重新注册。
vi /home/dmdba/dmdbms/bin/DmServicedmdb
启动服务
DmServicedmdb start
登录验证:
之后可以修改备份路径,然后进行更进一步的验证。
文章
阅读量
获赞
