达梦数据库-后期更改数据库(单机)实例目录及相关目录步骤-记录总结流程步骤(1) 检查确认数据库实例相关的各种路径如数据库系统表空间初始路径、自定义添加表空间数据文件路径、归档路径、跟踪日志路径、备份作业备份路径、审计日志路径(2) 提前创建好预期更改后目录(3) 停止应用系统对数据库进行备份(4) 移动数据库实例目录到新目录(5) 根据前期路径检查情况修改各种路径(数据库系统表空间初始路径、自定义添加表空间数据文件路径、归档路径、跟踪日志路径、备份作业备份路径、审计日志路径),涉及dm.ini、dmarch.ini、sqllog.ini、dm.ctl等文件(6) 重新注册数据库服务(7) 启动数据库服务登录数据库检查确认路径修改情况(8) 连接登录数据库修改备份作业路径并检查确认。步骤示例测试环境--DM v8 03134284368-20260306-316451-20149 Pack62 Kylin 10 x86_64示例需求初始数据库实例目录为/data/dmdata 更改为/datas/dmdata如果有用户表空间新增不同路径数据文件 更改为/datas/dmdata如果有归档归档路径改为/datas/dmarch如果有备份备份路径改为/datas/dmbak如果其它路径相关都改为/datas/下示例步骤(1)准备安装初始数据库环境过程略select id_code,* from v$version;(2)构造环境--创建测试表空间create tablespace TEST datafile /datatest/test.dbf size 128 autoextend on maxsize 67108863 CACHE NORMAL;--创建测试用户CREATE USER TEST IDENTIFIED BY TEST_qweasd1000 DEFAULT TABLESPACE TEST DEFAULT INDEX TABLESPACE TEST;grant RESOURCE,PUBLIC,VTI,SOI,SVI to TEST;grant CREATE SESSION to TEST;--创建测试表及测试数据create table test.test(id int,info varchar2(10),sjtime DATETIME);insert into test.test values(1,test1,now());commit;select * from test.test;--开启归档alter database mount;alter database ARCHIVELOG;ALTER DATABASE ADD ARCHIVELOG DEST/data/dmarch, TYPELOCAL, FILE_SIZE2048, SPACE_LIMIT102400;--开启全备、增量备份、删除备份作业、sql日志跟踪等开启过程略(3)数据库各种路径梳理检查--参数文件中路径设置查询select PARA_NAME,PARA_VALUE from v$dm_ini where PARA_NAME like %PATH;--查看表空间与数据文件对应关系SELECT * FROM V$TABLESPACE;SELECT * FROM V$DATAFILE;SELECT * FROM V$HUGE_TABLESPACE;SELECT TS.NAME, DF.PATH FROM V$TABLESPACE AS TS, V$DATAFILE AS DF WHERE TS.ID DF.GROUP_ID;--检查归档文件路径select arch_mode from v$database;select ARCH_TYPE,ARCH_DEST,ARCH_FILE_SIZE,ARCH_SPACE_LIMIT from v$dm_arch_ini;--检查是否开启跟踪日志select PARA_NAME,PARA_VALUE from v$dm_ini where PARA_NAME SVR_LOG;[dmdba192 ~]$ cat /data/dmdata/DAMENG/sqllog.ini--检查是否开启审计及审计日志相关[dmdba192 ~]$ disql SYSAUDITOR/TEST_qweasd1000localhost:5237SELECT * FROM V$DM_INI WHERE PARA_NAMEENABLE_AUDIT;select * from V$AUDIT_SPACE;--检查备份作业文件路径select * from SYSJOB.SYSJOBS;select * from SYSJOB.SYSJOBSTEPS;(4)数据库备份关闭应用系统数据库物理热备份停止数据库服务数据库物理冷备份或者操作系统级别文件备份。过程略(5)创建目标目录与拷贝数据库实例目录到新目录[root192 ~]# mkdir /datas[root192 ~]# mkdir -p /datas/dmdata[root192 ~]# mkdir -p /datas/dmbak/[root192 ~]# chown -R dmdba:dinstall /datas[root192 ~]#su - dmdba[dmdba192 ~]$ cp -r /data/dmdata/DAMENG /datas/dmdata/[dmdba192 ~]$ cp -r /data/dmbak/DAMENG /datas/dmbak/[dmdba192 ~]$ cp -r /datatest/test.dbf /datas/dmdata/DAMENG/(6)修改dm.ini文件中路径修改vi /datas/dmdata/DAMENG/dm.inicat /datas/dmdata/DAMENG/dm.ini |grep PATH如果有开启审计如果需要修改审计日志路径再 dm_ini中修改AUD_PATH值AUD_PATH /data/dmdata/DAMENG/aud_pathlog(7)修改/datas/dmdata/DAMENG/sqllog.ini文件中配置[dmdba192 ~]$ vi /datas/dmdata/DAMENG/sqllog.ini[dmdba192 ~]$ cat /datas/dmdata/DAMENG/sqllog.ini(8)修改/datas/dmdata/DAMENG/dmarch.ini归档路径配置[dmdba192 DAMENG]$ vi /datas/dmdata/DAMENG/dmarch.ini[dmdba192 DAMENG]$ cat /datas/dmdata/DAMENG/dmarch.ini(9)修改控制文件中配置并检查确认[dmdba192 ~]$ dmctlcvt TYPE1 SRC/datas/dmdata/DAMENG/dm.ctl DEST/datas/dmdata/DAMENG/dmctl.txt[dmdba192 ~]$ vi /datas/dmdata/DAMENG/dmctl.txt[dmdba192 ~]$ cat /datas/dmdata/DAMENG/dmctl.txt |grep data[dmdba192 ~]$ mv /datas/dmdata/DAMENG/dm.ctl /datas/dmdata/DAMENG/dm.ctlbak[dmdba192~]$dmctlcvt TYPE2 SRC/datas/dmdata/DAMENG/dmctl.txt DEST/datas/dmdata/DAMENG/dm.ctl(10)重新注册实例并启动数据库服务##取消原数据库服务注册bash /opt/dmdbms/script/root/dm_service_uninstaller.sh -n DmServiceDAMENG##使用root用户新注册数据库服务[root]#bash /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /datas/dmdata/DAMENG/dm.ini -p DAMENG[root]# systemctl enable DmServiceDAMENG.service##启动数据库服务[root]# systemctl start DmServiceDAMENG.service(11)登录数据库查询操作[dmdba192 ~]$ disql sysdba/TEST_qweasd1000localhost:5237--数据检查select * from test.test;--参数检查select PARA_NAME,PARA_VALUE from v$dm_ini where PARA_NAME like %PATH;--表空间路径检查SELECT TS.NAME, DF.PATH FROM V$TABLESPACE AS TS, V$DATAFILE AS DF WHERE TS.ID DF.GROUP_ID;--归档路径检查select ARCH_TYPE,ARCH_DEST,ARCH_FILE_SIZE,ARCH_SPACE_LIMIT from v$dm_arch_ini;--修改备份作业备份路径及检查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);call SP_JOB_CONFIG_START(bak_inc);call SP_ALTER_JOB_STEP_EX(bak_inc, bak_inc, 6, 11000000/data/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);select * from SYSJOB.SYSJOBS;select * from SYSJOB.SYSJOBSTEPS;更多达梦数据库运维指南、在线文档、相关资料、社区在线提问以及技术分享访问 https://eco.dameng.com/