Oracle数据库表空间存储位置迁移

问题描述:Oracle表空间所在的硬盘空间不足,需要将表空间迁移到空间较大的硬盘。

1、使用sys或者system用户使用sysdba权限登录oracle;

2、查询所有的表空间以及表空间所在地址;

select * from dba_data_files;

3、将需要迁移的表空间置为offline状态;

alter tablespace 表空间名称 offline;

例如:

alter tablespace TEST_SPACE offline;

4、将需要迁移的表空间文件复制到目标文件夹;

例如:

将C:\oracledata\TEST_SPACE.DBF文件拷贝到D:\oracledata\TEST_SPACE.DBF。

5、修改需要迁移的表空间指向地址;

alter tablespace 表空间名称 rename datafile '原地址' to '目标地址';

例如:

alter tablespace TEST_SPACE rename datafile 'C:\oracledata\TEST_SPACE.DBF' to 'D:\oracledata\TEST_SPACE.DBF';

6、将需要迁移的表空间置为online状态;

alter tablespace 表空间名称 online;

例如:

alter tablespace TEST_SPACE online;

7、可能出现的问题:

第6步如果出现错误:ora-01113 文件n 需要介质修复,在cmd窗口使用sys/system登录,使用recover datafile n;语句恢复。

例如:

ora-01113 文件10 需要介质修复,输入语句:recover datafile 10;

你可能感兴趣的:(Oracle数据库表空间存储位置迁移)