由於Oracle資料庫中的資料增長過快,導致資料檔案所在的磁碟空間不足,為了清理空間,我就把oracle關閉,然後直接把資料檔案、控制檔案、重做日誌組移到另一個磁碟,但這造成很多的問題,並且都不好清理,於是就重新移動回去,之後通過查詢我才找到移動的方法:
移動使用者建立的資料表空間時,在資料庫開啟的情況下:
1、首先將資料表空間設定為唯讀
alter tablespace bfina read only;
2、然後將資料表空間設定為離線狀態
alter database datafile '/opt/app/oracle/oradata/orcl/bfina.dbf' offline;
3、然後將資料檔案拷貝到一個新的位置
host cp '/opt/app/oracle/oradata/orcl/bfina.dbf' '/gisdata/orcl/bfina.dbf'
4、重新命名資料檔案到一個新的位置
alter database rename file '/opt/app/oracle/oradata/orcl/bfina.dbf' to '/gisdata/orcl/bfina.dbf'
5、然後將資料檔案聯機
alter database datafile '/gisdata/orcl/bfina.dbf' online
6、將資料表空間設定為讀寫權限
alter tablespace bfina read write;
7、最後刪掉舊有的資料檔案
若是要移動系統資料表空間
那麼的裝載系統到MOUNT狀態
startup mount;
1、將系統資料表空間離線
alter database datafile '/opt/app/oracle/oradata/orcl/system01.dbf' offline;
2、然後拷貝到新的目錄
host cp '' ''
3、重新命名系統資料表空間到新的位置
alter database rename file '/opt/app/oracle/oradata/orcl/system01.dbf' to '/gisdata/orcl/system01.dbf'
4、然後聯機
alter database '/opt/app/oracle/oradata/orcl/system01.dbf' online;
5、之後開啟資料庫