移動資料檔案、系統表空間檔案、臨時表空間檔案
1.移動資料檔案實驗
首先使表空間離線,,複製資料檔案到計劃的位置,重定義資料檔案,使表空間聯機,再檢視是否已經成功移動資料檔案
SQL> alter tablespace test_index offline;
表空間已更改。
SQL> selecttablespace_name,status,contents from dba_tablespaces;
TABLESPACE_NAME STATUS CONTENTS
------------------------------ ------------------
SYSTEM ONLINE PERMANENT
SYSAUX ONLINE PERMANENT
UNDOTBS1 ONLINE UNDO
TEMP ONLINE TEMPORARY
USERS ONLINE PERMANENT
EXAMPLE ONLINE PERMANENT
test ONLINE PERMANENT
TEST_INDEX OFFLINE PERMANENT
TEST_UNDO ONLINE UNDO
TEST_TEMP ONLINE TEMPORARY
SQL> select file#,name,status from v$datafile;
FILE# NAME STATUS
------------------------------------------------------------ -------
1 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF SYSTEM
2 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF ONLINE
3 C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF ONLINE
4 C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF ONLINE
5 C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
6 D:\DISK2\MOON\TEST01.DBF ONLINE
7 D:\DISK4\MOON\TEST02.DBF ONLINE
8 D:\DISK6\MOON\TEST_INDEX.DBF OFFLINE
9 D:\DISK7\MOON\TEST_UNDO.DBF ONLINE
SQL> host copyd:\disk6\moon\test_index.dbf d:\disk4\moon\test_index.dbf
已複製 1 個檔案。
SQL> alter tablespace test_index rename datafile 'd:\disk6\moon\test_index.dbf' to 'd:\disk4\moon\test_index.dbf';
表空間已更改。
SQL> alter tablespace test_index online;
表空間已更改。
SQL> select file#,name,status fromv$datafile;
FILE# NAME STATUS
---------- ---------------------------------------------------------
1 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF SYSTEM
2 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF ONLINE
3 C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF ONLINE
4 C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF ONLINE
5 C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
6 D:\DISK2\MOON\TEST01.DBF ONLINE
7 D:\DISK4\MOON\TEST02.DBF ONLINE
8 D:\DISK4\MOON\TEST_INDEX.DBF ONLINE
9 D:\DISK7\MOON\TEST_UNDO.DBF ONLINE
#########################################################################
2.移動系統表空間資料檔案
首先將資料庫啟動到MOUNT狀態 ,複製資料檔案到指定位置,然後重定向資料檔案,成功以後開啟資料庫,檢查是否已經更改。
SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup mount
ORACLE 例程已經啟動。
Total System Global Area 431038464 bytes
Fixed Size 1375088 bytes
Variable Size 318768272 bytes
Database Buffers 104857600 bytes
Redo Buffers 6037504 bytes
資料庫裝載完畢。
SQL> host copy C:\ORCL\SYSTEM01.DBF e:\disk1\
已複製 1 個檔案。
SQL> alter database rename file 'C:\ORCL\SYSTEM01.DBF' to 'e:\disk1\system01.dbf';
資料庫已更改。
SQL> alter database open;
SQL> select file#,name,status fromv$datafile;
FILE# NAME STATUS
------------------------------------------------------------ -------
1 E:\DISK1\SYSTEM01.DBF SYSTEM
2 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF ONLINE
3 C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF ONLINE
4 C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF ONLINE
5 C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
6 D:\DISK2\MOON\TEST01.DBF ONLINE
7 D:\DISK4\MOON\TEST02.DBF ONLINE
8 D:\DISK4\MOON\TEST_INDEX.DBF ONLINE
9 D:\DISK7\MOON\TEST_UNDO.DBF ONLINE
#######################################################################
3.刪除表空間及資料檔案
可以同時刪除表空間和資料檔案 "test"是因為建表空間時名字加了雙引號為小寫test, 預設為大寫
刪除表空間,不作業系統層面刪除資料檔案:
SQL> drop tablespace "test";
表空間已刪除。
SQL> select file#,name,status fromv$datafile;
FILE# NAME STATUS
---------- ---------------------------------------------------------
1 E:\DISK1\SYSTEM01.DBF SYSTEM
2 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF ONLINE
3 C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF ONLINE
4 C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF ONLINE
5 C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
8 D:\DISK4\MOON\TEST_INDEX.DBF ONLINE
9 D:\DISK7\MOON\TEST_UNDO.DBF ONLINE
刪除表空間同時刪除資料檔案:
SQL> drop tablespace test_index including contents and datafiles;
表空間已刪除。
SQL> select file#,name,status fromv$datafile;
FILE# NAME STATUS
---------- ---------------------------------------------------------
1 E:\DISK1\SYSTEM01.DBF SYSTEM
2 C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF ONLINE
3 C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF ONLINE
4 C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF ONLINE
5 C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
9 D:\DISK7\MOON\TEST_UNDO.DBF ONLINE
#######################################################################################
4.移動臨時表空間及資料檔案:
這個其實沒必要這樣做,可以直接新建一個臨時表空間,然後把切換到新建的臨時表空間上。參照新建並切換UNDO表空間的操作。
SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup mount;
ORACLE 例程已經啟動。
Total System Global Area 431038464 bytes
Fixed Size 1375088 bytes
Variable Size 331351184 bytes
Database Buffers 92274688 bytes
Redo Buffers 6037504 bytes
資料庫裝載完畢。
SQL> alter database rename file'c:\ORCL\TEMP01.DBF' to 'e:\sysoradata\temp01.dbf';
資料庫已更改。
SQL> host copy c:\orcl\temp01.dbfe:\sysoradata\temp01.dbf
已複製 1 個檔案。
SQL> alter database open;
資料庫已更改。
SQL> select name,status from v$tempfile;
NAME STATUS
------------------------------ -------
E:\SYSORADATA\TEMP01.DBF ONLINE
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29196873/viewspace-1067294/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 資料檔案,表空間的移動
- Oracle臨時表空間檢視、新增臨時表空間資料檔案、修改預設臨時表空間 方法!Oracle
- 批量處理時臨時增加回滾表空間臨時表空間檔案
- 線上遷移表空間資料檔案
- Oracle 表空間資料檔案遷移Oracle
- 表空間online移動資料檔案
- 表空間&資料檔案和控制檔案(zt)
- 關於移動臨時表空間檔案位置的問題
- InnoDB資料表空間檔案平滑遷移
- MySQL 系統表空間檔案解析MySql
- 臨時表空間資料檔案損壞的解決
- 大檔案表空間
- MySQL InnoDB系統表空間資料檔案配置MySql
- PostgreSQL在不同的表空間移動資料檔案SQL
- Oracle 表空間與資料檔案Oracle
- 表空間和資料檔案管理
- oracle 資料檔案表空間管理Oracle
- MySQL innodb共享表空間新增表空間資料檔案方法MySql
- . 資料庫臨時表空間的資料檔案的丟失資料庫
- (個人)Oracle 表空間資料檔案遷移(轉)Oracle
- 【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案
- Oracle 表空間增加檔案Oracle
- 表空間和資料檔案的管理
- oracle 表空間 資料檔案 筆記Oracle筆記
- 表空間資料檔案故障處理
- 表空間新增資料檔案的疑惑
- 【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案(續)
- 表空間中有資料也可以壓縮表空間(資料檔案)大小
- 刪除表空間和表空間包含的檔案
- 建立表空間、使用者、擴容、移動資料檔案
- RMAN恢復表空間,資料檔案,歸檔檔案,控制檔案等介紹
- 達夢資料庫系統表空間資料檔案遷移過程資料庫
- 修改表空間檔案路徑
- oracle 普通表空間資料檔案壞塊Oracle
- 表空間(資料檔案shrink)收縮示例
- oracle 回收表空間的資料檔案大小Oracle
- 誤刪oracle資料庫表空間檔案Oracle資料庫
- 重新命名資料檔案和表空間