注册
DM-在线或停机修改表空间数据文件位置
技术分享/ 文章详情 /

DM-在线或停机修改表空间数据文件位置

lysrwhjy 2024/04/10 1409 4 0

DM-在线/停机修改表空间数据文件位置

在线修改表空间数据文件位置

创建测试表空间

CREATE TABLESPACE “TEST1” DATAFILE ‘/opt/data/db_5237/TEST1.DBF’ size 32 CACHE = NORMAL;
image.png

创建用户并且指定表空间

CREATE USER “TEST1” IDENTIFIED BY “Dameng123” DEFAULT TABLESPACE “TEST1” DEFAULT INDEX TABLESPACE “TEST1”;
image.png

创建测试表test

create table test1.test (id int,name varchar2(10));
insert into test1.test values (1,‘哈哈’);
commit;
image.png
查看表空间状态select tablespace_name,status,contents from dba_tablespaces;
image.png
查看表空间路径
select file_id,file_name,tablespace_name from dba_data_files;
image.png
使表空间TEST1为脱机状态
ALTER TABLESPACE “TEST1” OFFLINE;
image.png
image.png

修改表空间路径

alter tablespace “TEST1” rename datafile ‘/opt/data/db_5237/TEST1.DBF’ to ‘/opt/data/datafile/TEST1.DBF’;
image.png
使表空间TEST1为联机状态
image.png
image.png

验证数据

select * from “TEST1”.“TEST”;
image.png

停数据库服务修改表空间位置

将数据库转换控制文件为文本文件

[dmdba@localhost bin]$ ./dmctlcvt TYPE=1 SRC=/opt/data/db_5237/dm.ctl DEST=/opt/data/db_5237/dmctl.txt
image.png
修改转换后的txt文件
[dmdba@localhost db_5237]$ vim dmctl.txt
将刚刚的在线修改的地址修改回来
image.png
将数据库转换后的txt文本文件转换为控制文件
[dmdba@localhost bin]$ ./dmctlcvt TYPE=2 SRC=/opt/data/db_5237/dmctl.txt DEST=/opt/data/db_5237/dm.ctl
image.png

修改数据文件TEST1的物理位置

[dmdba@localhost bin]$ mv /opt/data/datafile/TEST1.DBF /opt/data/db_5237/
image.png

启动数据库验证数据

image.png
image.png
查看表空间路径
image.png
查看表空间状态
select tablespace_name,status,contents from dba_tablespaces;
image.png
注意:临时表空间需要停机需改,临时表空间的路径信息在dm.ini中修改,在dm.ini中有一个参数为:TEMP_PATH,默认路径为数据库目录下
image.png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服