這兩天因爲oracle數據庫中的數據增加過快,致使數據文件所在的磁盤空間不足,爲了清理空間,我就把oracle關閉,而後直接把數據文件、控制文件、重作日誌組移到另外一個磁盤,但這形成不少的問題,而且都很差清理,因而就從新移動回去,以後經過查詢我才找到移動的方法:
移動用戶建立的表空間時,在數據庫打開的狀況下:
一、首先將表空間設置爲只讀
alter tablespace bfina read only;
二、而後將表空間設置爲脫機狀態
alter database datafile '/opt/app/oracle/oradata/orcl/bfina.dbf' offline;
三、而後將數據文件拷貝到一個新的位置
host cp '/opt/app/oracle/oradata/orcl/bfina.dbf' '/gisdata/orcl/bfina.dbf'
四、從新命名數據文件到一個新的位置
alter database rename file '/opt/app/oracle/oradata/orcl/bfina.dbf' to '/gisdata/orcl/bfina.dbf'
五、而後將數據文件聯機
alter database datafile '/gisdata/orcl/bfina.dbf' online
六、將表空間設置爲讀寫權限
alter tablespace bfina read write;
七、最後刪掉舊有的數據文件
如果要移動系統表空間
那麼的裝載系統到MOUNT狀態
startup mount;
一、將系統表空間脫機
alter database datafile '/opt/app/oracle/oradata/orcl/system01.dbf' offline;
二、而後拷貝到新的目錄
host cp '' ''
三、從新命名系統表空間到新的位置
alter database rename file '/opt/app/oracle/oradata/orcl/system01.dbf' to '/gisdata/orcl/system01.dbf'
四、而後聯機
alter database '/opt/app/oracle/oradata/orcl/system01.dbf' online;
五、以後打開數據庫數據庫