本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用僅供讀取複本將 HA 新增至 Oracle PeopleSoft Amazon 自訂
創建者:自動化(AWS)
環境:生產 | 技術:資料庫;基礎架構 | 工作量:甲骨文 |
AWS 服務:Amazon RDS |
Summary
若要在 Amazon Web Services (AWS) 上執行 Oracle PeopleSoft 企業資源規劃 (ERP) 解決方案,您可以使用 Amazon Relational Database Service 服務 (Amazon RDS) 或 Amazon RDS 自訂軟體,該服務支援需要存取基礎作業系統和資料庫環境的傳統、自訂和封裝應用程式。如需規劃移轉時要考量的關鍵因素,請參閱 AWS Prescriptive Guidance 中的 Oracle 資料庫遷移策略。
在撰寫本文時,適用於 Oracle 的 RDS 自訂不支援異地同步備份選項,該選項適用於 Amazon RDS 適用於 Oracle,使用儲存複寫作為 HA 解決方案。而是使用待命資料庫建立並維護主要資料庫的實體副本,此模式可達到 HA。該模式著重於使用 Oracle 資料保全設定僅供讀取複本,在具有 HA 的 Amazon RDS 自訂上執行 PeopleSoft 應用程式資料庫的步驟。
此模式也會將僅供讀取複本變更為唯讀模式。讓僅供讀取複本處於唯讀模式可提供額外的好處:
以唯讀模式使用複本需要 「Oracle 作用中的資料保全」選項,此選項需要額外付費,因為它是「Oracle 資料庫企業版」的個別授權功能。
先決條件和限制
前提
限制
產品版本
架構
目標技術堆疊
目標架構
下圖顯示 Amazon RDS 自訂資料庫執行個體和 Amazon RDS 自訂僅供讀取複本。僅供讀取複本使用「Oracle 作用中資料保全」複寫到另一個可用區域。您也可以使用僅供讀取複本卸載主要資料庫上的讀取流量,以及用於報告用途。
如需使用 AWS PeopleSoft 上 Oracle 的代表性架構,請參閱在 AWS 上設定高可用性 PeopleSoft 架構。
AWS 服務
Amazon RDS Custom for Oracle 是一種受管資料庫服務,適用於需要存取基礎作業系統和資料庫環境的舊式、自訂和封裝應用程式。
AWS Secrets Manager 可協助您透過 API 呼叫秘密管 Secrets Manager 員來取代程式碼中的硬式編碼登入資料 (包括密碼),以程式設計方式擷取密碼。在此模式中,您可以使用密碼名稱從「秘密管理員」擷取資料庫使用者密碼do-not-delete-rds-custom-+<<RDS Resource ID>>+-dg
。RDS_DATAGUARD
其他工具
最佳實務
若要實現零資料遺失 (RPO=0) 目標,請使用「MaxAvailability
資料保全」保護模式與重做傳輸SYNC+NOAFFIRM
設定,以獲得更好的效能。如需有關選取資料庫保護模式的詳細資訊,請參閱其他資訊一節。
史诗
任務 | 描述 | 所需技能 |
---|
建立僅供讀取複本。 | 若要建立 Amazon RDS 自訂資料庫執行個體的僅供讀取複本,請遵循 Amazon RDS 文件中的指示,並使用您建立的 Amazon RDS 自訂資料庫執行個體 (請參閱先決條件一節) 做為來源資料庫。 依預設,Amazon RDS 自訂僅供讀取複本建立為實體待命,並處於掛接狀態。這是故意確保符合 Oracle 主動資料保全授權的規定。 此模式包含用於設定多租用戶容器資料庫 (CDB) 或非 CDB 執行個體的程式碼。 | DBA |
任務 | 描述 | 所需技能 |
---|
存取主要資料庫上的「資料保全」中介組態。 | 在此範例中,Amazon RDS 自訂僅供讀取複本RDS_CUSTOM_ORCL_D 適用於非 CDB 執行個體和 RDS_CUSTOM_RDSCDB_B CDB 執行個體。非 CDB 的資料庫為 orcl_a (主要) 和 orcl_d (待命)。CDB 的資料庫名稱為 rdscdb_a (主要) 和 rdscdb_b (待命)。 您可以直接或透過主要資料庫連線到 RDS Custom 僅供讀取複本。您可以在$ORACLE_HOME/network/admin 目錄中的tnsnames.ora 檔案中找到資料庫的網路服務名稱。適用於 Oracle 的 RDS 自訂會自動為您的主要資料庫和僅供讀取複本填入這些項目。 RDS_DATAGUARD 使用者的密碼會以密碼名稱儲存在 AWS Secrets Manager 中do-not-delete-rds-custom-+<<RDS Resource ID>>+-dg 。如需有關如何使用從 Secrets Manager 擷取的安全殼層 (安全殼層) 金鑰連線至 RDS 自訂執行個體的詳細資訊,請參閱使用 SSH 連線至 RDS 自訂資料庫執行個體。
若要透過「資料保全」命令行 (dgmgrl ) 存取「Oracle 資料保全」中介組態,請使用下列程式碼。 非國家開發行 $ dgmgrl RDS_DATAGUARD@RDS_CUSTOM_ORCL_D
DGMGRL for Linux: Release 19.0.0.0.0 - Production on Fri Sep 30 22:44:49 2022
Version 19.10.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Welcome to DGMGRL, type "help" for information.
Password:
Connected to "ORCL_D"
Connected as SYSDG.
DGMGRL>
DGMGRL> show database orcl_d
Database - orcl_d
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 0 seconds ago)
Apply Lag: 0 seconds (computed 0 seconds ago)
Average Apply Rate: 11.00 KByte/s
Instance(s):
ORCL
SUCCESS
DGMGRL>
國家開發行 -bash-4.2$ dgmgrl C##RDS_DATAGUARD@RDS_CUSTOM_RDSCDB_B
DGMGRL for Linux: Release 19.0.0.0.0 - Production on Wed Jan 11 20:24:11 2023
Version 19.16.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Welcome to DGMGRL, type "help" for information.
Password:
Connected to "RDSCDB_B"
Connected as SYSDG.
DGMGRL>
DGMGRL> show database rdscdb_b
Database - rdscdb_b
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 1 second ago)
Average Apply Rate: 2.00 KByte/s
Real Time Query: OFF
Instance(s):
RDSCDB
Database Status:
SUCCESS
DGMGRL>
| DBA |
透過從主要節點連線到 DGMGRL 來變更記錄傳輸設定。 | 將記錄傳輸模式變更為FastSync ,對應於重做傳輸設定SYNC+NOAFFIRM 。若要確保在角色切換之後擁有有效的設定值,請同時針對主要資料庫和待命資料庫進行變更。 非國家開發行 DGMGRL>
DGMGRL> edit database orcl_d set property logxptmode=fastsync;
Property "logxptmode" updated
DGMGRL> show database orcl_d LogXptMode;
LogXptMode = 'fastsync'
DGMGRL> edit database orcl_a set property logxptmode=fastsync;
Property "logxptmode" updated
DGMGRL> show database orcl_a logxptmode;
LogXptMode = 'fastsync'
DGMGRL>
國家開發行 DGMGRL> edit database rdscdb_b set property logxptmode=fastsync;DGMGRL> edit database rdscdb_b set property logxptmode=fastsync;
Property "logxptmode" updated
DGMGRL> show database rdscdb_b LogXptMode;
LogXptMode = 'fastsync'
DGMGRL> edit database rdscdb_a set property logxptmode=fastsync;
Property "logxptmode" updated
DGMGRL> show database rdscdb_a logxptmode;
LogXptMode = 'fastsync'
DGMGRL>
| DBA |
將保護模式變更為 MaxAvailability。 | 透過DGMGRL 從主要節點MaxAvailability 連線,將保護模式變更為。 非國家開發行 DGMGRL> edit configuration set protection mode as maxavailability;
Succeeded.
DGMGRL> show configuration;
Configuration - rds_dg
Protection Mode: MaxAvailability
Members:
orcl_a - Primary database
orcl_d - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS (status updated 38 seconds ago)
DGMGRL>
國家開發行 DGMGRL> show configuration
Configuration - rds_dg
Protection Mode: MaxAvailability
Members:
rdscdb_a - Primary database
rdscdb_b - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS (status updated 57 seconds ago)
DGMGRL>
| DBA |
任務 | 描述 | 所需技能 |
---|
停止待命資料庫的重做套用。 | 依預設,僅供讀取複本是以MOUNT 模式建立的。若要以唯讀模式開啟它,您首先需要透過DGMGRL 從主節點或待命節點連線至來關閉 redo apply。 非國家開發行 DGMGRL> show database orcl_dDGMGRL> show database orcl_d
Database - orcl_d
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 1 second ago)
Average Apply Rate: 11.00 KByte/s
Real Time Query: OFF
Instance(s):
ORCL
Database Status:
SUCCESS
DGMGRL> edit database orcl_d set state=apply-off;
Succeeded.
DGMGRL> show database orcl_d
Database - orcl_d
Role: PHYSICAL STANDBY
Intended State: APPLY-OFF
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 42 seconds (computed 1 second ago)
Average Apply Rate: (unknown)
Real Time Query: OFF
Instance(s):
ORCL
Database Status:
SUCCESS
DGMGRL>
國家開發行 DGMGRL> show configurationDGMGRL> show configuration
Configuration - rds_dg
Protection Mode: MaxAvailability
Members:
rdscdb_a - Primary database
rdscdb_b - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS (status updated 57 seconds ago)
DGMGRL> show database rdscdb_b;
Database - rdscdb_b
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 1 second ago)
Average Apply Rate: 2.00 KByte/s
Real Time Query: OFF
Instance(s):
RDSCDB
Database Status:
SUCCESS
DGMGRL> edit database rdscdb_b set state=apply-off;
Succeeded.
DGMGRL> show database rdscdb_b;
Database - rdscdb_b
Role: PHYSICAL STANDBY
Intended State: APPLY-OFF
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 1 second ago)
Average Apply Rate: (unknown)
Real Time Query: OFF
Instance(s):
RDSCDB
Database Status:
SUCCESS
| DBA |
以唯讀模式開啟僅供讀取複本執行個體。 | 使用 TNS 項目 Connect 到待命資料庫,然後從主要或待命節點連線至該資料庫,以唯讀模式開啟它。 非國家開發行 $ sqlplus RDS_DATAGUARD@RDS_CUSTOM_ORCL_D as sysdg
-bash-4.2$ sqlplus RDS_DATAGUARD@RDS_CUSTOM_ORCL_D as sysdg
SQL*Plus: Release 19.0.0.0.0 - Production on Fri Sep 30 23:00:14 2022
Version 19.10.0.0.0
Copyright (c) 1982, 2020, Oracle. All rights reserved.
Enter password:
Last Successful login time: Fri Sep 30 2022 22:48:27 +00:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.10.0.0.0
SQL> select open_mode from v$database;
OPEN_MODE
--------------------
MOUNTED
SQL> alter database open read only;
Database altered.
SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ ONLY
SQL>
國家開發行 -bash-4.2$ sqlplus C##RDS_DATAGUARD@RDS_CUSTOM_RDSCDB_B as sysdg
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Jan 11 21:14:07 2023
Version 19.16.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Enter password:
Last Successful login time: Wed Jan 11 2023 21:12:05 +00:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.16.0.0.0
SQL> select name,open_mode from v$database;
NAME OPEN_MODE
--------- --------------------
RDSCDB MOUNTED
SQL> alter database open read only;
Database altered.
SQL> select name,open_mode from v$database;
NAME OPEN_MODE
--------- --------------------
RDSCDB READ ONLY
SQL>
| DBA |
在僅供讀取複本執行個體上啟用重做套用。 | 使用主節點或待命節點的 DGMGR L,在僅供讀取複本執行個體上啟動重做套用。 非國家開發行 $ dgmgrl RDS_DATAGUARD@RDS_CUSTOM_ORCL_D
DGMGRL for Linux: Release 19.0.0.0.0 - Production on Fri Sep 30 23:02:16 2022
Version 19.10.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Welcome to DGMGRL, type "help" for information.
Password:
Connected to "ORCL_D"
Connected as SYSDG.
DGMGRL>
edit database orcl_d set state=apply-on;
DGMGRL> edit database orcl_d set state=apply-on;
Succeeded.
DGMGRL> show database orcl_d
Database - orcl_d
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 0 seconds ago)
Apply Lag: 0 seconds (computed 0 seconds ago)
Average Apply Rate: 496.00 KByte/s
Real Time Query: ON
Instance(s):
ORCL
Database Status:
SUCCESS
DGMGRL>
國家開發行 -bash-4.2$ dgmgrl C##RDS_DATAGUARD@RDS_CUSTOM_RDSCDB_B-bash-4.2$ dgmgrl C##RDS_DATAGUARD@RDS_CUSTOM_RDSCDB_B
DGMGRL for Linux: Release 19.0.0.0.0 - Production on Wed Jan 11 21:21:11 2023
Version 19.16.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Welcome to DGMGRL, type "help" for information.
Password:
Connected to "RDSCDB_B"
Connected as SYSDG.
DGMGRL> edit database rdscdb_b set state=apply-on;
Succeeded.
DGMGRL> show database rdscdb_b
Database - rdscdb_b
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 0 seconds ago)
Apply Lag: 0 seconds (computed 0 seconds ago)
Average Apply Rate: 35.00 KByte/s
Real Time Query: ON
Instance(s):
RDSCDB
Database Status:
SUCCESS
DGMGRL> show database rdscdb_b
Database - rdscdb_b
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 1 second ago)
Average Apply Rate: 16.00 KByte/s
Real Time Query: ON
Instance(s):
RDSCDB
Database Status:
SUCCESS
DGMGRL>
| DBA |
相關資源
其他資訊
選取您的資料庫保護模式
Oracle 資料保全提供三種保護模式,可根據您的可用性、保護和效能需求來設定「資料保全」環境。下表摘要說明這三種模式。
保護模式 | 重做傳輸設定 | Description |
最高效能 | ASYNC
| 對於主要資料庫上發生的交易,重做資料會以非同步方式傳輸,並寫入待命資料庫重做日誌。因此,效能的影響是最小的。 MaxPerformance 由於非同步記錄傳送,無法提供 RPO=0。
|
最大保護 | SYNC+AFFIRM
| 對於主要資料庫上的交易,在確認交易之前,會同步傳輸重做資料,並將其寫入磁碟上的待命資料庫重做日誌。如果待命資料庫無法使用,主要資料庫會自行關閉,以確保交易受到保護。 |
最大可用性 | SYNC+AFFIRM
| 這與MaxProtection 模式類似,除非沒有從待命資料庫接收到確認。在這種情況下,它會像處於MaxPerformance 模式一樣,以保留主要資料庫可用性,直到能夠再次將其重做串流寫入同步處理的待命資料庫為止。 |
SYNC+NOAFFIRM
| 對於主要資料庫上的交易,redo 會同步傳輸至待命資料庫,且主要資料庫只會等待重做已在待命時接收到的確認,而不是已寫入待命磁碟。此模式 (也稱為) 可提供效能優勢FastSync ,但在多次同時發生故障的特殊情況下,可能會遭受資料遺失的潛在風險。 |
RDS 自訂適用於 Oracle 的僅供讀取複本是以最高效能保護模式建立的,這也是 Oracle 資料保全的預設保護模式。最大效能模式對主要資料庫的效能影響最低,可協助您符合以秒為單位測量的復原點目標 (RPO) 需求。
若要達成零資料遺失 (RPO=0) 目標,您可以MaxAvailability
使用重做傳輸的SYNC+NOAFFIRM
設定,將「Oracle 資料保全」保護模式自訂為,以獲得更好的效能。由於只有在對應的重做向量順利傳輸至待命資料庫之後才會確認主要資料庫上的認可,因此主要執行個體和複本之間的網路延遲對於認可敏感性工作負載而言至關重要。建議您對工作負載執行負載測試,以評估自訂僅供讀取複本以在MaxAvailability
模式下執行時的效能影響。
與在不同可用區域部署僅供讀取複本相比,在主要資料庫相同的可用區域中部署僅供讀取複本可提供較低的網路延遲。但是,在相同的可用區域中部署主要和僅供讀取複本可能不符合 HA 需求,因為在可用區域無法使用的情況下,主要執行個體和僅供讀取複本執行個體都會受到影響。