达梦8——移动数据库目录;主备移动备库
有时候我们可能初始化实例出错了,需要移动数据库目录;
也有时候主备中备库所在挂载点占用空间太大,需要移动到其他挂载点;
那么移动数据库目录,或者主备移动备库,需要改什么文件呢?
一、单机——移动数据库目录
1、改dm.ini
以移动数据库目录为例,我们把数据库目录DAMENG先移走,然后去bin目录下前台启动数据库服务,我们来看看前台启动服务需要依赖什么?
去dm。ini文件里,把几个文件的路径都改了;
sed -r 's#/home/dmdba/dmdbms/DAMENG/DAMENG#/home/dmdba/dmdbms/DAMENG2/#' dm.ini |grep /home/dmdba
sed -ri 's#/home/dmdba/dmdbms/DAMENG/DAMENG#/home/dmdba/dmdbms/DAMENG2/#' dm.ini |grep /home/dmdba
2、改dm.ctl
需要依赖SYSTEM.DBF数据文件,然后这个数据文件的路径在dm.ctl文件里修改
(1)./dmctlcvt转换服务
./dmctlcvt help
(2)dmctl.txt转换后有这么多路径,全部由sed命令改了
sed -ri 's#/home/dmdba/dmdbms/DAMENG/DAMENG/#/home/dmdba/dmdbms/DAMENG2/#' dmctl.txt |grep /home/dmdba
(3)用./dmctlcvt工具再把txt文件改回ctl文件,然后就可以前台启动服务器了;
./dmctlcvt TYPE=2 SRC=/home/dmdba/dmdbms/DAMENG2/dmctl.txt DEST=/home/dmdba/dmdbms/DAMENG2/dm.ctl
./dmserver path=/home/dmdba/dmdbms/DAMENG2/dm.ini
问题:备库所在的磁盘空间不足时,可能需要把备库迁移到其他挂载点下;
1、停数据守护
-
停监视器
-
停备库watcher,server
-
停主库watcher,server
2、备份
停服务:./DmService5236 stop
启动dmrman:./dmrman
RMAN>BACKUP DATABASE '主库dm.ini文件所在位置' FULL BACKUPSET '主库的BAK目录';
关闭dmrman:RMAN>exit
3、更改数据文件目录
进入到DAMENG存在的目录;
mv DAMENG /用户指定目录
4、修改配置
-
dm.ini文件修改,很多路径都不一样了;
sed -ri 's #/home/dmdba/data/DAMENG/bak#/dump/DAMENG/bak' dm.ini
-
-
dm.ctl要改,因为数据库启动会依赖system.dbf和roll.dbf,而这些数据文件的路径已经不一样了
./dmctlcvt help
sed -ri 's #/home/dmdba/data/DAMENG/#/dump/DAMENG/' dm.ctl.txt
./dmctlcvt help #再将dmctl.txt转换成dm.ctl格式 -
oguid要改 ,保持同一组
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL>sp_set_oguid(453331);
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0); -
备库的注册服务要改;分别是server服务、watcher服务、dmmonitor服务;因为各个注册服务依赖的dm.ini、dmwatcher.ini 、 dmmonitor.ini路径已经不一样了。
记得把server服务修改为启动mount!!!
./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/data/DAMENG/dm.ini -m mount -p DM02
./dm_service_installer.sh -t dmwatcher -dmwatcher_ini /home/dmdba/data/DAMENG/dmwatcher.ini -p DM02
systemctl list-unit-files|grep dm
5、启数据守护
-
启动主库server,watcher
-
启动备库server,watcher
-
启动监视器;通过show,观察是否正常;
6、测试
-
主库创建表,insert数据,commit;
-
在备库查询此表,看能不能查询到;
三、做个测试题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2019-09-17 MySQL—02—MySQL的操作
2019-09-17 MySQL—01—MySQL介绍和安装