Oracle表空間數(shù)據(jù)文件移動(dòng)
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供利通網(wǎng)站建設(shè)、利通做網(wǎng)站、利通網(wǎng)站設(shè)計(jì)、利通網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、利通企業(yè)網(wǎng)站模板建站服務(wù),10年利通做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
系統(tǒng):windows
oracle:10g
實(shí)現(xiàn)把用戶表空間中的數(shù)據(jù)文件從某一個(gè)路徑移動(dòng)到里一個(gè)路徑
一、針對(duì)可offline的非系統(tǒng)表空間
本例移動(dòng)oracle的案例表空間(EXAMPLE表空間),將其從
D:\ORADATA\ORCL\ 移動(dòng)到 D:\ORACLE\ORADATA\
1.查看要改變的表空間的數(shù)據(jù)文件信息
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.將目標(biāo)表空間設(shè)置為脫機(jī)狀態(tài)
SQL> alter tablespace EXAMPLE offline;
3.再次查看目標(biāo)表空間的狀態(tài),確保其已經(jīng)是脫機(jī)狀態(tài)
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.將原來的數(shù)據(jù)文件移動(dòng)(或復(fù)制)到新的路徑
SQL> host move D:\ORADATA\ORCL\EXAMPLE01.DBF D:\ORACLE\ORADATA\
5.修改該表空間的數(shù)據(jù)文件路徑
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.修改該表空間為在線狀態(tài)
SQL> alter tablespace EXAMPLE online;
8.查看該表空間最后結(jié)果
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
備注:本方法對(duì)SYSAUX、USERS表空間也適用
二、系統(tǒng)表空間移動(dòng)
該方法需要數(shù)據(jù)庫處于mount狀態(tài)
1.關(guān)閉運(yùn)行中的數(shù)據(jù)庫
SQL> shutdown immediate
2.啟動(dòng)數(shù)據(jù)庫到mount狀態(tài)
SQL> startup mount
3.移動(dòng)系統(tǒng)表空間(SYSTEM表空間)的數(shù)據(jù)文件
SQL> host move D:\ORADATA\ORCL\SYSTEM01.DBF D:\ORACLE\ORADATA\
4.修改該表空間的數(shù)據(jù)文件路徑
SQL> alter database rename file 'D:\ORADATA\ORCL\SYSTEM01.DBF' to 'D:\ORACLE\ORA
DATA\SYSTEM01.DBF';
5.啟動(dòng)數(shù)據(jù)庫,打開實(shí)例
SQL> alter database open;
6.查看表空間修改結(jié)果
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
備注:本方法對(duì)UNDOTBS1、TEMP表空間也適用
鳴謝:本人參考了多篇文章后總結(jié)而得,在此感謝各位網(wǎng)絡(luò)分享者!