达梦数据库-后期更改数据库(单机)实例目录及相关目录步骤-记录总结

达梦数据库-后期更改数据库(单机)实例目录及相关目录步骤-记录总结

流程步骤

(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 HUN_admin2026 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, TYPE=LOCAL, FILE_SIZE=2048, SPACE_LIMIT=102400';

--开启全备、增量备份、删除备份作业、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 VTABLESPACE AS TS, VDATAFILE 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';

dmdba@192 \~$ cat /data/dmdata/DAMENG/sqllog.ini

--检查是否开启审计及审计日志相关

dmdba@192 \~$ disql SYSAUDITOR/HUN_admin2026@localhost:5237

SELECT * FROM V$DM_INI WHERE PARA_NAME='ENABLE_AUDIT';

select * from V$AUDIT_SPACE;

--检查备份作业文件路径

select * from SYSJOB.SYSJOBS;

select * from SYSJOB.SYSJOBSTEPS;

(4)数据库备份

关闭应用系统,数据库物理热备份;

停止数据库服务,数据库物理冷备份或者操作系统级别文件备份。

过程略

(5)创建目标目录与拷贝数据库实例目录到新目录

root@192 \~# mkdir /datas

root@192 \~# mkdir -p /datas/dmdata

root@192 \~# mkdir -p /datas/dmbak/

root@192 \~# chown -R dmdba:dinstall /datas

root@192 \~#su - dmdba

dmdba@192 \~$ cp -r /data/dmdata/DAMENG /datas/dmdata/

dmdba@192 \~$ cp -r /data/dmbak/DAMENG /datas/dmbak/

dmdba@192 \~$ cp -r /datatest/test.dbf /datas/dmdata/DAMENG/

(6)修改dm.ini文件中路径修改

vi /datas/dmdata/DAMENG/dm.ini

cat /datas/dmdata/DAMENG/dm.ini |grep PATH

如果有开启审计,如果需要修改审计日志路径再 dm_ini中修改AUD_PATH值

AUD_PATH = /data/dmdata/DAMENG/aud_pathlog

(7)修改/datas/dmdata/DAMENG/sqllog.ini文件中配置

dmdba@192 \~$ vi /datas/dmdata/DAMENG/sqllog.ini

dmdba@192 \~$ cat /datas/dmdata/DAMENG/sqllog.ini

(8)修改/datas/dmdata/DAMENG/dmarch.ini归档路径配置

dmdba@192 DAMENG$ vi /datas/dmdata/DAMENG/dmarch.ini

dmdba@192 DAMENG$ cat /datas/dmdata/DAMENG/dmarch.ini

(9)修改控制文件中配置并检查确认

dmdba@192 \~$ dmctlcvt TYPE=1 SRC=/datas/dmdata/DAMENG/dm.ctl DEST=/datas/dmdata/DAMENG/dmctl.txt

dmdba@192 \~$ vi /datas/dmdata/DAMENG/dmctl.txt

dmdba@192 \~$ cat /datas/dmdata/DAMENG/dmctl.txt |grep data

dmdba@192 \~$ mv /datas/dmdata/DAMENG/dm.ctl /datas/dmdata/DAMENG/dm.ctlbak

dmdba@192\~$dmctlcvt TYPE=2 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)登录数据库查询操作

dmdba@192 \~$ disql sysdba/HUN_admin2026@localhost: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 VTABLESPACE AS TS, VDATAFILE 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/

相关推荐
火山上的企鹅1 小时前
Codex实战:APP远程升级服务搭建(三)后台管理页面(APK 上传、版本管理、多应用页签)
服务器·网络·数据库·oracle·qgc
阿狸猿2 小时前
论 NoSQL 数据库技术及其应用
数据库·nosql
FBI HackerHarry浩2 小时前
DataGrip2023.2.3默认保存的数据库和.sql文件在哪里?怎么修改默认路径?
数据库
袁小皮皮不皮2 小时前
3.HCIP OSPF补充知识(优化版)
服务器·网络·数据库·网络协议·智能路由器
运筹vivo@2 小时前
Python ContextVar 底层机制与内存模型拆解
前端·数据库·python
志栋智能3 小时前
超自动化巡检:知识沉淀与团队协作的新载体
大数据·运维·网络·数据库·人工智能·自动化
syt_biancheng3 小时前
Redis初识
数据库·redis·缓存
cmes_love3 小时前
股票逐笔level2历史行情下载十档订单薄五档tick分钟下载分享
数据库·区块链
仙俊红3 小时前
SQL 调优需要掌握的知识
数据库·sql
fofantasy4 小时前
NSK LH12AN 微型导轨技术手册
运维·网络·数据库·经验分享·规格说明书