表空間狀態控制數據訪問權限,是維護窗口、備份、只讀歷史數據的核心手段。本文詳細說明 ONLINE、OFFLINE、READ ONLY、READ WRITE 四種狀態的含義、切換語法、前置條件與實戰驗證。
| 狀態 | 訪問能力 | 典型場景 |
|---|---|---|
| ONLINE | 正常讀寫 | 業務運行期 |
| OFFLINE | 不可訪問 | 冷備份、應用升級、表空間遷移 |
| READ ONLY | 僅查詢,不可 DML | 歷史歸檔數據、合規歸檔 |
| READ WRITE | 正常讀寫 | 從 READ ONLY 恢復業務寫入 |
SQL> SELECT tablespace_name, status FROM dba_tablespaces; TABLESPACE_NAME STATUS ---------------- --------- SYSTEM ONLINE MYSPACE ONLINE SQL> ALTER TABLESPACE myspace OFFLINE; Tablespace altered. SQL> SELECT tablespace_name, status FROM dba_tablespaces WHERE tablespace_name='MYSPACE'; TABLESPACE_NAME STATUS ---------------- --------- MYSPACE OFFLINE
SYSTEM、SYSAUX、UNDO、臨時表空間不可離線/只讀;OFFLINE IMMEDIATE 會導致啟動時需 RECOVER,非必要勿用;READ ONLY 前必須確保無未提交事務,否則報 ORA-01541;ORA-00376;V$SESSION_WAIT。