首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle DBA 接手新環境必查 21 項核心清單

     編輯:Oracle 資料庫基礎

前言:從陌生到掌控的系統化路徑

接手一個陌生的 Oracle 環境,如同醫生面對新病患,需要標準化的「體檢流程」快速建立全貌認知。本清單蒐羅實戰經驗,涵蓋版本架構、高可用配置、儲存拓撲、安全基線、效能基準五大維度,助您在最短時間內完成環境評估並製訂運維規範。

一、 版本與平台基線

-- 完整版本資訊
SELECT * FROM v$version;

-- 已安裝元件清單
SELECT * FROM dba_registry;

-- 核心屬性
SELECT dbid, name, open_mode, database_role, platform_name FROM v$database;
SELECT dbms_utility.port_string FROM dual;

-- PL/SQL 方式獲取相容版本
SET SERVEROUTPUT ON
DECLARE
  ver VARCHAR2(100);
  compat VARCHAR2(100);
BEGIN
  dbms_utility.db_version(ver, compat);
  dbms_output.put_line('Version: ' || ver || ' Compatible: ' || compat);
END;
/

關鍵檢查點:確認是否為終止支援版本、PSU 修補層級、32/64 位元架構、作業系統補丁包版本。

二、 高可用架構拓撲

1. 叢集識別

SET SERVEROUTPUT ON
DECLARE
  inst_tab dbms_utility.instance_table;
  inst_cnt NUMBER;
BEGIN
  IF dbms_utility.is_cluster_database THEN
    dbms_utility.active_instances(inst_tab, inst_cnt);
    dbms_output.put_line('Cluster nodes: ' || inst_cnt);
  ELSE
    dbms_output.put_line('Single Instance');
  END IF;
END;
/

2. Data Guard 狀態

SELECT protection_mode, protection_level, remote_archive,
       database_role, dataguard_broker, guard_status
FROM v$database;

必確認:保護模式、同步/非同步傳輸、Broker 是否啟用、角色轉換歷史。

三、 核心儲存與恢復配置

項目查詢語句關注重點
歸檔模式ARCHIVE LOG LIST; / SELECT log_mode FROM v$database;必須為 ARCHIVELOG
閃回資料庫SELECT flashback_on FROM v$database;開啟則檢查 FRA 大小/使用率
強制日誌/補充日誌SELECT force_logging, supplemental_log_data_min, supplemental_log_data_pk, supplemental_log_data_ui, supplemental_log_data_fk, supplemental_log_data_all FROM v$database;DG/邏輯備份前提
控制檔分佈SELECT * FROM v$controlfile;多路徑冗餘、ASM 磁碟組分離
重做日誌群組SELECT l.group#, lf.type, lf.member, l.bytes, l.status, lf.status FROM v$log l, v$logfile lf WHERE l.group#=lf.group# ORDER BY 1,3;群組數、大小、多工成員、狀態
參數檔位置SHOW PARAMETER spfileSPFILE 所在儲存、備份策略
BCT 區塊變更追蹤SELECT filename, status, bytes FROM v$block_change_tracking;增量備份加速關鍵

四、 實例與網路拓撲

SELECT instance_name, host_name, status, archiver, database_status, instance_role, active_state
FROM v$instance;

檢查監聽器配置(listener.ora、tnsnames.ora、sqlnet.ora)、SCAN VIP(RAC)、防火牆規則、連線負載平衡設定。

五、 安全與合規基線

  • 預設密碼:SELECT username FROM dba_users_with_defpwd WHERE account_status='OPEN';
  • Profile 複雜度:SELECT profile, resource_name, limit FROM dba_profiles ORDER BY 1,2;
  • 密碼驗證函數:檢查 PASSWORD_VERIFY_FUNCTION 設定
  • 大小寫敏感度:SEC_CASE_SENSITIVE_LOGON 參數(12c+ 預設 TRUE)
  • 資源限制:RESOURCE_LIMIT 參數與 Profile 綁定情況

六、 物件健康度與效能基準

-- 無效物件
SELECT owner, object_type, COUNT(*) FROM dba_objects
WHERE status = 'INVALID' GROUP BY owner, object_type;

-- 啟用特性報告
EXEC DBMS_FEATURE_USAGE_REPORT;

-- 字符集屬性
SELECT * FROM database_properties;

-- 近期告警日誌關鍵字:ORA-, TNS-, deadlock, corruption, timeout
-- AWR/ASH 報告(近 7 天高峰時段)
-- RDA 完整收集(Oracle 支援請求標準輸入)

七、 進階擴展檢查

  1. ASM 架構:磁碟組冗餘度、AU 大小、磁碟平衡狀態
  2. 備份策略:RMAN 配置、備份窗口、離場策略、恢復演練記錄
  3. 分區表/索引:分區策略、維護作業、統計資訊收集排程
  4. 應用連線池:UCP/DRCP 配置、連線洩漏監控

結語:從清單到體系

完成上述 21 項檢查,您已掌握環境「骨架」。後續工作重點轉向:建立標準化運維手冊、自動化巡檢腳本、效能基準線、變更管理流程、災難恢復演練排程。記住:好的 DBA 不只是修補漏洞,更是為系統設計「免疫系統」。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved