首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 資料庫常用管理指令大全

     編輯:Oracle 資料庫相關知識

資料庫基本資訊查詢

-- 1. 資料庫名稱與建立日期
SELECT name, created, log_mode, open_mode FROM v$database;

-- 2. 主機名、實例名、版本資訊
SELECT host_name, instance_name, version FROM v$instance;

-- 3. 詳細版本資訊
SELECT * FROM v$version;

控制檔與重做日誌管理

-- 4. 控制檔名稱
SELECT * FROM v$controlfile;

-- 5. 重做日誌群組狀態
SELECT group#, members, bytes, status, archived FROM v$log;
SELECT group#, member FROM v$logfile;

-- 7. 歸檔模式狀態
ARCHIVE LOG LIST;

表空間與資料檔查詢

-- 8. 表空間狀態
SELECT tablespace_name, block_size, status, contents, logging FROM dba_tablespaces;

-- 9. 資料檔詳細資訊
SELECT file_id, file_name, tablespace_name, status, bytes FROM dba_data_files;

使用者與權限管理

-- 10. 使用者建立時間與預設表空間
SELECT username, created FROM dba_users;
SELECT username, default_tablespace FROM dba_users;

控制檔深度解析

控制檔包含可重用區段(由 CONTROL_FILE_RECORD_KEEP_TIME 控制,預設 7 天)與不可重用區段。不可重用區段大小受 MAXDATAFILES、MAXLOGFILES 等參數影響。

-- 13. 檢視控制檔區段使用情況
SELECT type, record_size, records_total, records_used FROM v$controlfile_record_section;

-- 15. 關鍵類型記錄使用量
SELECT type, record_size, records_total, records_used
FROM v$controlfile_record_section
WHERE type IN ('DATAFILE','TABLESPACE','REDO LOG');

控制檔維護操作

  1. 查詢現有控制檔:SELECT * FROM v$controlfile;
  2. 正常關閉資料庫:SHUTDOWN IMMEDIATE;
  3. 修改參數檔 CONTROL_FILES 參數(SPFILE 環境用 ALTER SYSTEM SET control_files=... SCOPE=SPFILE;)
  4. OS 層級複製控制檔至新位置
  5. 啟動資料庫並驗證:SELECT * FROM v$controlfile;

控制檔備份策略

-- 18. 二進位備份
ALTER DATABASE BACKUP CONTROLFILE TO 'D:\backup\control.bak';

-- 19. 追蹤檔備份(含重建 SQL)
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;

資料庫關閉模式比較

歸檔模式切換

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE NOARCHIVELOG;  -- 或 ARCHIVELOG
ALTER DATABASE OPEN;
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
模式行為適用情境
NORMAL等待所有使用者主動斷線計畫性維護
IMMEDIATE回滾未提交交易、中斷連線、關閉最常用的正常關閉
TRANSACTIONAL等待進行中交易提交/回滾不想中斷長交易
ABORT立即終止執行個體,啟動時需執行個體復原緊急狀況