實現把用戶表空間中的數據文件從某一個路徑移動到另一個路徑
一、針對可offline的非系統表空間
本例移動oracle的案例表空間(EXAMPLE表空間),將其從
D:\ORADATA\ORCL\ 移動到 D:\ORACLE\ORADATA\
1.查看要改變的表空間的數據文件信息
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
2.將目標表空間設置為脫機狀態
SQL> alter tablespace EXAMPLE offline;
3.再次查看目標表空間的狀態,確保其已經是脫機狀態
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF OFFLINE
4.將原來的數據文件移動(或復制)到新的路徑
SQL> host move D:\ORADATA\ORCL\EXAMPLE01.DBF D:\ORACLE\ORADATA\
5.修改該表空間的數據文件路徑
SQL> alter tablespace EXAMPLE
rename datafile 'D:\ORADATA\ORCL\EXAMPLE01.DBF'
to 'D:\ORACLE\ORADATA\EXAMPLE01.DBF';
6.查看該表空間修改后的信息,確保信息無誤
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF OFFLINE
7.修改該表空間為在線狀態
SQL> alter tablespace EXAMPLE online;
8.查看該表空間最后結果
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF ONLINE
備注:本方法對SYSAUX、USERS表空間也適用
二、系統表空間移動
該方法需要數據庫處于mount狀態
1.關閉運行中的數據庫
2.啟動數據庫到mount狀態
3.移動系統表空間(SYSTEM表空間)的數據文件
SQL> host move D:\ORADATA\ORCL\SYSTEM01.DBF D:\ORACLE\ORADATA\
4.修改該表空間的數據文件路徑
SQL> alter database rename file 'D:\ORADATA\ORCL\SYSTEM01.DBF' to 'D:\ORACLE\ORA
DATA\SYSTEM01.DBF';
5.啟動數據庫,打開實例
SQL> alter database open;
6.查看表空間修改結果
SQL> select tablespace_name,file_name,online_status from dba_data_files where ta
blespace_name='SYSTEM';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
SYSTEM D:\ORACLE\ORADATA\SYSTEM01.DBF SYSTEM
備注:本方法對UNDOTBS1、TEMP表空間也適用。
以上內容是小編給大家分享的Oracle表空間數據文件移動的方法,希望大家喜歡。
您可能感興趣的文章:- Oracle如何更改表空間的數據文件位置詳解
- Oracle7.X 回滾表空間數據文件誤刪除處理方法
- Oracle7.X 回滾表空間數據文件誤刪除處理方法
- Oracle7.X 回滾表空間數據文件誤刪除處理方法
- Oracle如何設置表空間數據文件大小