全部產品
Search
文件中心

Database Backup:Oracle物理備份的準備工作

更新時間:Jun 19, 2024

在進行Oracle物理備份前,您需要參考本文完成準備工作,包含開啟Oracle資料庫的歸檔模式、擷取Oracle SID及擷取資料庫程式目錄。

前提條件

您的使用者角色為DBA。

開啟歸檔模式

Database BackupDBS通過Oracle的RMAN工具進行Database Backup。Oracle資料庫的歸檔模式預設為關閉狀態,需將其開啟才能進行備份。

  1. 使用系統管理員sysdba角色通過as sysdba命令登入Oracle資料庫。

  2. 通過SQL命令ARCHIVE LOG LIST查詢當前資料庫的歸檔狀態,返回樣本如下:

    Database log mode              No Archive Mode  #非存檔模式
    Automatic archival             Disabled
    Archive destination            USE_DB_RECOVERY_FILE_DEST  
    Oldest online log sequence     1    
    Current log sequence           2  
    說明

    Database log mode參數返回Archive Mode #存檔模式,則表示當前已開啟歸檔模式,開啟歸檔模式步驟結束,無需進行後續操作。

  3. 如果歸檔模式未開啟,請通過SQL命令SHUTDOWN IMMEDIATE關閉資料庫,因為無法在OPEN狀態下開啟歸檔模式。

    警告

    請管理員在非業務高峰期進行此操作。

  4. 通過SQL命令STARTUP MOUNT啟動資料庫至MOUNT狀態。

  5. 通過SQL命令ALTER DATABASE ARCHIVELOG開啟歸檔模式。

  6. 再次通過SQL命令ARCHIVE LOG LIST查詢歸檔狀態,返回樣本如下:

    Databaselog mode             Archive Mode #存檔模式
    Automatic archival           Enabled 
    Archive destination          USE_DB_RECOVERY_FILE_DEST 
    Oldest online log sequence 1
    Next log sequence to archive 2
    Currentlog sequence        2
    說明

    開啟後,Oracle預設的日誌歸檔路徑為閃回恢複區($ORACLE_BASE/fast_recovery_area),該目錄預設僅有4 GB的空間,同時也是備份檔案和閃回日誌的預設路徑。為避免該磁碟空間不足導致資料庫服務異常,您可按需調整該目錄的空間大小或修改日誌歸檔路徑。

  7. 通過SQL命令ALTER DATABASE OPEN啟動資料庫。

擷取Oracle SID

  • Linux

    執行如下命令,從系統進程資訊中提取出正在啟動並執行Oracle資料庫執行個體的SID:

    ps -ef | grep ora_pmon_ | grep -v grep | awk -F "ora_pmon_" '{print "oracle sid: "$NF }' | grep -v print

    如下返回樣本表示Oracle SID為orcl

    oracle sid: orcl
  • Windows

    在Windows的命令列介面中快速擷取Oracle資料庫執行個體的SID和服務名:

    sc query type=service | findstr SERVICE_NAME | findstr OracleService

    如下返回樣本表示Oracle執行個體的SID為orcl,服務名為OracleServiceORCL

    SERVICE_NAME: OracleServiceORCL

擷取資料庫程式目錄

資料庫程式目錄即為ORACLE_HOME地址。

  1. 開啟命令列介面,使用su - oracle命令切換到Oracle使用者。

  2. 在Oracle資料庫中,使用echo $ORACLE_HOME命令查看當前系統中ORACLE_HOME環境變數所設定的路徑地址。

    如下返回樣本表示ORACLE_HOME地址為/opt/oracle/product/19c/dbhome_1

    /opt/oracle/product/19c/dbhome_1

Oracle RAC檔案查詢

為了保證備份成功,您需要在備份Oracle RAC前對控制檔案、參數檔案、資料檔案、歸檔日誌、REDO記錄檔進行檢查,備份其他架構無需執行以下操作。查詢樣本如下:

  • 查詢REDO記錄檔

    SELECT member FROM v$logfile WHERE type='ONLINE';

    返回樣本如下:MEMBER中顯示的值以+開頭,ASM為DBSBAKDAT1DG

  • 查詢歸檔記錄檔

    SELECT name FROM v$archived_log WHERE DELETED='NO';

    返回樣本如下:NAME中顯示的值以+開頭,ASM為DBSBAKDAT1DG

  • 查詢資料檔案

    SELECT name FROM v$datafile;

    返回樣本如下: VALUE中顯示的值以+開頭,ASM為DBSBAKDAT1DG

  • 查詢參數檔案

    SHOW parameter spfile;

    返回樣本如下:VALUE中顯示的值以+開頭,ASM為DBSBAKDAT1DG

  • 查詢控制檔案

    SHOW parameter control_files;

    返回樣本如下:VALUE中顯示的值以+開頭,ASM為DBSBAKDAT1DG

後續步驟

Oracle物理備份