Skip to main content
NetApp database solutions
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

在 Google Cloud NetApp Volumes 上建立 Oracle 主資料庫

貢獻者 netapp-jsnyder

使用 Oracle Database Configuration Assistant 以靜默模式在 Google Cloud NetApp Volumes iSCSI 儲存上建立 Oracle 主要資料庫。此程序涵蓋執行 `dbca`以在 GCNV 支援的 ASM 磁碟群組上建立容器資料庫和可插拔資料庫、設定歸檔日誌目的地,以及在啟用 Data Guard 後新增基於角色的應用程式服務以實現透明容錯移轉。

步驟

oracdb1`上建立 Oracle 容器資料庫和可插拔資料庫,以靜默模式使用 `dbca,設定歸檔日誌目的地,驗證 Oracle Restart 註冊,並新增基於角色的應用程式服務以實現透明用戶端容錯移轉。

  1. 以靜默模式執行 dbca,在 ASM 磁碟群組上建立 CDB 和 PDB:

    sudo -u oracle bash -c '
    export ORACLE_HOME=/u01/app/oracle/product/26ai/db_1
    export PATH=$ORACLE_HOME/bin:$PATH
    
    dbca -silent -createDatabase \
      -templateName General_Purpose.dbc \
      -gdbname orcl -sid orcl \
      -characterSet AL32UTF8 -nationalCharacterSet AL16UTF16 \
      -sysPassword "ChangeMe!1" -systemPassword "ChangeMe!1" \
      -emConfiguration NONE \
      -datafileDestination +DATA -storageType ASM \
      -recoveryAreaDestination +FRA -recoveryAreaSize 25000 \
      -enableArchive true -archiveLogMode AUTO \
      -memoryMgmtType AUTO_SGA -totalMemory 4096 \
      -databaseType MULTIPURPOSE \
      -createAsContainerDatabase true -numberOfPDBs 1 \
      -pdbName orclpdb -pdbAdminPassword "ChangeMe!1" \
      -ignorePreReqs
    '
  2. 將歸檔日誌指向 `+RECO`並開啟和儲存可插拔資料庫狀態。備用資料庫在 步驟 2:備用 init.ora、pfile 和 NOMOUNT 中使用相符的歸檔日誌設定:

    sudo -u oracle bash -c '
    export ORACLE_HOME=/u01/app/oracle/product/26ai/db_1
    export ORACLE_SID=orcl
    $ORACLE_HOME/bin/sqlplus -s / as sysdba <<SQL
    ALTER SYSTEM SET log_archive_dest_1='\''LOCATION=+RECO VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl'\'' SCOPE=BOTH;
    ALTER PLUGGABLE DATABASE ALL OPEN;
    ALTER PLUGGABLE DATABASE ALL SAVE STATE;
    EXIT
    SQL
    '
  3. 確認資料庫正在 Oracle Restart 下運作:

    sudo /u01/app/26ai/grid/bin/srvctl status database -d orcl
    # Expected: Database is running
    
    sudo -u oracle sqlplus -s / as sysdba <<<"SELECT name, open_mode, log_mode FROM v\$database;"
    # Expected: ORCL, READ WRITE, ARCHIVELOG
  4. 建立角色型應用程式服務,讓應用程式透過 `orclapp`連接,並在啟用 Data Guard 時實現透明的故障移轉:

    sudo -u oracle bash -c '
    export GRID_HOME=/u01/app/26ai/grid
    export ORACLE_HOME=/u01/app/oracle/product/26ai/db_1
    export PATH=$ORACLE_HOME/bin:$GRID_HOME/bin:$PATH
    
    srvctl add service \
      -db orcl \
      -service orclapp \
      -pdb orclpdb \
      -role PRIMARY \
      -policy AUTOMATIC
    
    srvctl start service -db orcl -service orclapp
    srvctl status service -db orcl -service orclapp
    '

    啟用 Data Guard Broker 後, `orclapp`僅在 PRIMARY 上執行。跨 ASM 磁碟群組多工控制檔案,並根據工作負載調整記憶體大小。

接下來呢?

若要建立備用保護和容錯移轉整備,請前往建立 Oracle 備用資料庫(位於 oracdb2)。