Data Guard 管理
本节重点介绍如何管理 Oracle Data Guard 配置和操作。它包括 dbaascli dataguard prepareStandbyBlob 等命令,用于生成用于设置备用站点的 blob 文件,以及 dbaascli dataguard updateDGConfigAttributes,用于在所有群集节点上更新 Data Guard 自动化属性。这些命令简化了 Data Guard 环境的设置和维护,以实现高可用性和灾难恢复。
- dbaascli dataguard prepareStandbyBlob
- dbaascli dataguard updateDGConfigAttributes
- dbaascli dataguard 故障转移
- dbaascli dataguard 恢复
- dbaascli dataguard 切换
- dbaascli dataguard prepareForStandby
- dbaascli dataguard configureStandby
- dbaascli dataguard registerStandby
- dbaascli dataguard deregisterStandby
- dbaascli dataguard configureAWR
- dbaascli dataguard updateConfiguration
dbaascli dataguard prepareStandbyBlob
要生成包含备用站点上所需的各种文件的 blob 文件(如果是 dataguard 环境),请使用 dbaascli dataguard prepareStandbyBlob 命令。
以 root 或 oracle 用户身份运行该命令。
语法:
dbaascli dataguard prepareStandbyBlob --dbname <value> --blobLocation <value>
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称 |
--blobLocation |
指定在 Data Guard 环境中生成备用 blob 文件的定制目录位置 |
常见问题解答:
问:dbaascli dataguard prepareStandbyBlob 命令的用途是什么?
答案:dbaascli dataguard prepareStandbyBlob 命令用于生成 blob 文件,其中包含 Data Guard 环境中备用站点上所需的各种文件。
问:运行 dbaascli dataguard prepareStandbyBlob 命令的先决条件有哪些?
答:该命令应以 root 或 oracle 用户身份运行。
问:如何指定要为其准备备用 blob 的 Oracle AI Database 的名称?
答:使用 --dbname 选项,后跟 Oracle AI Database 的名称。例如:
--dbname myDatabase
问:如何指定将生成备用 blob 文件的位置?
答:使用 --blobLocation 选项指定将生成备用 blob 文件的定制目录路径。例如:
--blobLocation /path/to/standby_blob
问:– dbname 选项在命令中执行什么操作?
答:--dbname 选项指定要为其准备备用 blob 文件的 Oracle AI Database 的名称。
问:– blobLocation 选项的用途是什么?
答:--blobLocation 选项定义将在其中创建备用 blob 文件的定制目录路径。
问:我是否可以以 root 或 oracle 之外的用户身份运行 dbaascli dataguard prepareStandbyBlob 命令?
答:否,该命令必须以 root 或 oracle 用户身份运行。
问:是否可以对– blobLocation 选项使用相对路径?
答:建议使用 --blobLocation 选项的绝对路径来确保在所需的目录中创建备用 blob 文件。
问:如果要更改生成备用 blob 文件的位置,应执行什么操作?
答:修改 --blobLocation 选项以指定备用 blob 文件的新目录路径。
问:在生成备用 blob 文件后,是否需要执行任何其他步骤?
答:是的,在生成备用 blob 文件后,您需要将其传输到备用站点并将其用于 Data Guard 配置。
dbaascli dataguard updateDGConfigAttributes
要更新所有群集节点上的 Data Guard 自动化属性,请使用 dbaascli dataguard updateDGConfigAttributes 命令。
以 root 或 oracle 用户身份运行该命令。
语法:
dbaascli dataguard updateDGConfigAttributes --attributes <value>
参数:
| 参数 | 说明 |
|---|---|
--attributes |
包含要修改的 Data Guard 自动化属性。接受 <attribute=value> 格式的逗号分隔值。必须在 Data Guard 配置文件中预定义属性。 |
常见问题解答:
问:dbaascli dataguard updateDGConfigAttributes 命令的用途是什么?
答:dbaascli dataguard updateDGConfigAttributes 命令用于在所有群集节点上更新 Data Guard 自动化属性。
问:运行 dbaascli dataguard updateDGConfigAttributes 命令的先决条件有哪些?
答:该命令必须以 root 或 oracle 用户身份运行。
Q:如何使用此命令指定要更新的属性?
答:使用 --attributes 选项,后跟要修改的属性。属性应采用逗号分隔的格式,例如 attribute=value。例如:
--attributes attribute1=value1,attribute2=value2
问:– attributes 选项值应采用什么格式?
答:--attributes 选项值应采用逗号分隔的格式,每个属性都指定为 attribute=value。
问:是否可以在– attributes 选项中指定多个属性?
答:是的,您可以通过使用逗号分隔多个属性。例如:
--attributes attribute1=value1,attribute2=value2
问:如果我提供 Data Guard 配置文件中未预定义的属性,会发生什么情况?
答:如果提供的属性不是预定义的,则该命令可能会失败或忽略无法识别的属性。确保在 Data Guard 配置文件中预定义了所有属性。
问:更新 Data Guard 自动化属性后,是否需要重新启动任何服务?
答:在大多数情况下,您不需要在更新属性后重新启动服务。但是,请检查特定属性及其影响,以确定是否需要重新启动。
问:如何验证 Data Guard 属性是否已成功更新?
答:运行该命令后,您可以通过检查 Data Guard 配置或使用特定于设置的相应验证命令/工具来验证更新的属性。
问:如果命令无法更新属性,我该怎么办?
答:查看错误消息,了解出错原因的详细信息。请确保您指定了有效的属性,并且这些属性已在 Data Guard 配置文件中预定义。验证用户权限和命令语法。
问:是否可以使用此命令仅更新特定节点的属性?
答案:否,dbaascli dataguard updateDGConfigAttributes 命令会更新所有群集节点的属性。如果需要更新特定节点的属性,则可能需要使用不同的方法或命令。
dbaascli dataguard 故障转移
要执行到备用数据库的手动故障转移,请使用 dataguard failover 命令。
以 oracle 用户身份在目标备用数据库上运行此命令。
语法:
dbaascli dataguard failover --dbname <value> [--useImmediateFailover] [--executePrereqs] [--waitForCompletion <value>] [--resume [--sessionID <value>]]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--useImmediateFailover |
当 Oracle Data Guard 配置处于警告或错误状态时,使用此标志。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
使用 dbaascli 实用程序执行手动故障转移操作
要执行到备用数据库的手动故障转移,请使用 dataguard failover 命令。
-
连接到 Oracle Data Guard 配置中的虚拟机,该虚拟机将以
opc用户身份托管新的主数据库。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell,然后切换到
oracle用户:$ sudo -s # su - oracle $ -
启动故障转移到备用数据库。
$ dbaascli dataguard failover --dbname <db-name> -
返回到
root用户。$ exit # -
退出 root-user 命令 shell 并断开与虚拟机的连接。
# exit $ exit
dbaascli dataguard 恢复
要在故障转移后将发生故障的数据库恢复为备用数据库,请使用 dataguard reinstate 命令。
以需要恢复的 oracle 用户身份运行此命令(即失败的备用数据库)。
语法:
dbaascli dataguard reinstate --dbname <value> [--primaryDBUniqueName <value>] [--executePrereqs] [--waitForCompletion <value>] [--resume [--sessionID <value>]]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--primaryDBUniqueName |
指定 Oracle Data Guard 设置中当前主数据库的数据库唯一名称。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
要确定何时应在 Data Guard (DG) 配置中恢复成员,请执行以下操作:
监视以下 ORA 错误的 dgmgrl show database 输出:
-
在新的主群集上:
ORA-16661:必须恢复备用数据库
-
在旧主群集上:
ORA-16623:成员检测到角色更改
这些消息指示发生了故障转移。要在 Data Guard 配置中恢复完全同步,必须恢复以前的主服务器。
使用 dbaascli 实用程序恢复失败的主数据库
要在故障转移后恢复发生故障的主数据库,请使用 dataguard reinstate 命令。
-
以
oracle用户身份连接到 Oracle Data Guard 配置中的其中一个虚拟机。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动恢复失败的主数据库。
$ dbaascli dataguard reinstate --dbname <db-name>在多备用设置(Data Guard 组)中,建议指定
--primaryDBUniqueName参数。dbaascli dataguard reinstate --dbname <db-name> --primaryDBUniqueName <primary-DB-unique-name> -
断开与虚拟机的连接。
$ exit
dbaascli dataguard 切换
要执行到备用数据库的切换,请使用 dataguard switchover 命令。
以 oracle 用户身份运行此命令。
语法:
dbaascli dataguard switchover --dbname <value> [--targetStandbyDBUniqueName <value>] [--executePrereqs] [--enableDGDebug] [--waitForCompletion <value>] [--resume [--sessionID <value>]]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--targetStandbyDBUniqueName |
指定将角色从备用数据库更改为主数据库的备用数据库唯一名称。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--enableDGDebug |
在执行操作时,启用跟踪。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
使用 dbaascli 实用程序执行切换操作
要执行到备用数据库的切换,请使用 dataguard switchover 命令。
-
连接到 Oracle Data Guard 配置中的虚拟机,该虚拟机将以
opc用户身份托管新的主数据库。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell,然后切换到
oracle用户。$ sudo -s # su - oracle $ -
启动切换到备用数据库。
$ dbaascli dataguard switchover --dbname <db-name>在多备用设置(Data Guard 组)中,建议指定
--targetStandbyDBUniqueName参数。dbaascli dataguard switchover --dbname <db-name> --targetStandbyDBUniqueName <target-standby-DB-unique-name> -
返回到
root用户。$ exit # -
退出 root-user 命令 shell 并断开与虚拟机的连接。
# exit $ exit
dbaascli dataguard prepareForStandby
要创建 Oracle 备用数据库,请使用 dbaascli dataguard prepareForStandby 命令作为第一步。
以 root 用户身份在主数据库上运行此命令。在命令运行结束时,将创建一个备用 BLOB 文件。必须将此文件复制到备用数据库系统才能继续执行 configureStandby 步骤。
注:对于 Oracle Base Database Cloud@Customer 上的灾难恢复 (Disaster Recovery,DR) 配置,您必须使用 Oracle Cloud Infrastructure (OCI) 控制台或 OCI SDK 来设置 Data Guard。此用例不支持 dbaascli 实用程序,因此不应使用。
语法:
dbaascli dataguard prepareForStandby --dbname <value> --standbyDBUniqueName <value> --standbyDBDomain | --noDBDomain --standbyScanIPAddresses <Standby SCAN IP Addresses> [ --standbyScanPort ] [ --standbyServiceName ] [ -- primaryScanIPAddresses ] [ --primaryScanPort ] [--executePrereqs] [--resume [--sessionID <value>]] [--revert [--sessionID <value>]] [--waitForCompletion] [--skipDRConfiguration]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--standbyDBUniqueName |
指定将为其配置主数据库的备用数据库的唯一名称。 |
--standbyDBDomain |
指定将为其配置主数据库的备用数据库域。 |
--noDBDomain |
指定不对备用数据库使用数据库域名。 |
--standbyScanIPAddresses |
指定对应备用数据库 SCAN 监听程序或备用数据库的 SCAN 名称的一系列 IP 地址的逗号分隔列表。 |
--standbyScanPort |
指定备用数据库的对应 SCAN 端口号。 |
--standbyServiceName |
指定将针对其配置主数据库的备用数据库服务名称。 |
--primaryScanIPAddresses |
指定对应主数据库 SCAN 监听程序或主数据库的 SCAN 名称的一系列 IP 地址,各个 IP 地址之间用逗号分隔。 |
--primaryScanPort |
指定主数据库的对应 SCAN 端口号。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
--revert |
回退上一个操作。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
--skipDRConfiguration |
指定是否在备用数据库设置过程中跳过灾难恢复 (Disaster Recovery,DR) 配置。有效值:true(跳过 DR 配置)或 false(配置 DR)。 |
使用 dbaascli 实用程序执行 PrepareForStandby 操作
要准备主数据库以创建新的备用数据库,请使用 dbaascli dataguard prepareForStandby 命令。
-
连接到要以
opc用户身份托管主数据库的虚拟机。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell。
$ sudo -s -
运行
prepareForStandby命令。出现提示时输入SYS口令。dbaascli dataguard prepareForStandby --dbName <db name> --standbyDBUniqueName <standby db unique name> --standbyDBDomain <standby db domain> --standbyScanIPAddresses <comma-delimieted list of standby SCAN IP addresses> --primaryScanIPAddresses <comma-delimited list of primary SCAN IP addresses> --standbyScanPort <standby SCAN listener port>完成后,该命令将显示创建备用 BLOB 文件的位置。
-
退出 root-user 命令 shell 并断开与虚拟机的连接。
# exit
dbaascli dataguard configureStandby
要创建新的备用数据库,请使用 dbaascli dataguard configureStandby 命令作为 prepareForStandby 步骤之后的第二个步骤。
以 root 用户身份在备用群集上运行此操作。
语法:
dbaascli dataguard configureStandby --dbname <value> --oracleHome <value> | --oracleHomeName <value> --standbyDBUniqueName <value> [--standbyDBDomain <value>] | [--noDBDomain] --primaryScanIPAddresses <value> --primaryScanPort <value> --primaryServiceName <value> --protectionMode <value> --transportType <value> --activeDG <value> [--standbyBlobFromPrimary <value>] | [--standbyDBInfoJsonLocation <value>] [--standbyScanIPAddresses <value>] [--standbyScanPort <value>] [--standbySID <value>] [--nodeList <value>] [--skipAWRConfiguration] [--primaryDBOCID <value>] [--sgaSizeInMB <value>] [--pgaSizeInMB <value>] [--datafileDestination <value>] [--fraDestination <value>] [--redoLogDestination <value>] [--fraSizeInMB <value>] [--tdeKeyStoreType <value> [--tdeKeyOCID <value>]] [--tdeKeyOCID <value>] [--executePrereqs] [--resume [--sessionID <value>]] | [--revert [--sessionID <value>]] --waitForCompletion <value>] [--enableFIPS <value>] [--skipDRConfiguration] [--okvServer <value> --okvAdminUserName <value> [--okvServerRestPort <value>]] [--okvWalletName <value>]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--oracleHome |
指定 Oracle 主目录路径。 |
--oracleHomeName |
指定 Oracle 主目录名称。 |
--standbyDBUniqueName |
指定备用数据库的数据库唯一名称。 |
--standbyDBDomain |
指定将为其配置主数据库的备用数据库域。 |
--noDBDomain |
指定不对备用数据库使用数据库域名。 |
--primaryScanIPAddresses |
指定对应主数据库 SCAN 监听程序或主数据库的 SCAN 名称的一系列 IP 地址,各个 IP 地址之间用逗号分隔。 |
--primaryScanPort |
指定主数据库服务的对应 SCAN 端口号。 |
--primaryServiceName |
指定将针对其配置备用数据库的主数据库服务名称。 |
--protectionMode |
指定在配置备用数据库时要设置的 Data Guard 保护模式。有效值:MAX_PERFORMANCE 或 MAX_AVAILABILITY。 |
--transportType |
指定在配置备用数据库时要设置的 Data Guard 传输类型。有效值:ASYNC 或 SYNC。 |
--activeDG |
指定 Data Guard 配置是否将处于活动状态。有效值:true 或 false。 |
--standbyBlobFromPrimary |
指定从主数据库准备的备用 BLOB 文件的位置。这仅对备用操作是必需的。 |
--standbyDBInfoJsonLocation |
指定从主数据库生成的信息文件的位置,用于导出其他元数据。此选项仅对备用操作是必需的。 |
--standbyScanIPAddresses |
指定对应备用数据库 SCAN 监听程序或备用数据库的 SCAN 名称的一系列 IP 地址的逗号分隔列表。 |
--standbyScanPort |
指定备用数据库的对应 SCAN 端口号。 |
--standbySID |
指定备用配置的备用数据库 SID 。 |
--nodeList |
指定应运行备用数据库的节点列表,包括已运行或已配置的节点。 |
--skipAWRConfiguration |
指定是否在备用数据库设置过程中跳过 Oracle AWR 配置。有效值:true(跳过 AWR 配置)或 false(配置 AWR)。 |
--primaryDBOCID |
指定与主数据库对应的资源 OCID 值。 |
--sgaSizeInMB |
指定 sga_target 值(以 MB 为单位)。 |
--pgaSizeInMB |
指定 pga_aggregate_target 值(以 MB 为单位)。 |
--datafileDestination |
指定要用于数据库数据文件的存储位置。 |
--fraDestination |
指定要用于数据库快速恢复区的存储位置。 |
--redoLogDestination |
指定要用于重做日志文件的存储位置。 |
--fraSizeInMB |
指定快速恢复区大小值(以 MB 为单位)。 |
--tdeKeyStoreType |
指定 TDE 密钥库类型。有效值:FILE、KMS、AZURE、GOOGLE、AWS 或 OKV |
--tdeKeyOCID |
指定要用于 TDE 的 KMS/AZURE/GOOGLE/AWS 密钥 OCID。仅当为 TDE 密钥库类型选择了 KMS/AZURE/GOOGLE/AWS 时才适用。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
--revert |
回退上一个操作。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
--enableFIPS |
指定是否启用 FIPS。设置为 false 可禁用它。有效值:true 或 false。 |
--skipDRConfiguration |
指定是否在备用数据库设置过程中跳过灾难恢复 (Disaster Recovery,DR) 配置。有效值:true(跳过 DR 配置)或 false(配置 DR)。 |
--okvServer |
指定 Oracle Key Vault 服务器。多个 IP 地址的逗号分隔列表。 |
--okvAdminUserName |
指定 Oracle Key Vault 管理员用户名。 |
--okvServerRestPort |
指定 Oracle Key Vault 的 REST 端口号。 |
--okvWalletName |
指定 Oracle Key Vault wallet 名称。 |
使用 dbaascli 实用程序执行 configureStandby 操作
要创建备用数据库,请使用 dbaascli dataguard configureStandby 命令。
-
连接到要以
opc用户身份托管备用数据库的虚拟机。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell。
$ sudo -s -
运行
configureStandby命令。dbaascli dataguard configureStandby --standbySID <standby SID> --activeDG <true|false> --dbName <db name> --standbyDBUniqueName <standby db unique name> --standbyScanName <comma-delimited list of standby SCAN IP addresses> --protectionMode <MAX_PERFORMANCE|MAX_AVAILABILITY> --standbyScanPort <standby SCAN port> --oracleHome <oracle home path> --standbyDBDomain <standby db domain name>. --primaryServiceName <primary db service name> --transportType <ASYNC|SYNC> --primaryScanPort <primary db SCAN port> --primaryScanIPAddresses <comma-delimited list primary db SCAN IP addresses> --standbyBlobFromPrimary <standby BLOB from primary> -
出现提示时,输入主数据库
SYS、TDE和AWR口令。成功完成命令后,备用数据库将启动并开始运行。
dbaascli dataguard registerStandby
要将新创建的备用数据库注册到所有现有备用数据库和主数据库,请使用 dbaascli dataguard registerStandby 命令作为 configureStandby 步骤之后的第三步。
以 root 用户身份在主群集上运行此命令。此外,在多备用设置中,对所有备用集群(新创建的备用数据库集群除外)运行该命令。
语法:
dbaascli dataguard registerStandby --dbname <value> --standbyDBUniqueName <value> --standbyDBDomain <value> | --noDBDomain --standbyScanIPAddresses <value> [--standbyScanPort <value>] [--standbyServiceName <value>] [--executePrereqs] [--resume [--sessionID <value>]] | [--revert [--sessionID <value>]] [--waitForCompletion <value>]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--standbyDBUniqueName |
指定要在 Oracle Data Guard 中介配置中注册的备用数据库的数据库唯一名称。 |
--standbyDBDomain |
指定将为其配置主数据库的备用数据库域。 |
--noDBDomain |
指定不对备用数据库使用数据库域名。 |
--standbyScanIPAddresses |
指定对应备用数据库 SCAN 监听程序或备用数据库的 SCAN 名称的一系列 IP 地址的逗号分隔列表。 |
--standbyScanPort |
指定备用数据库的对应 SCAN 端口号。 |
--standbyServiceName |
指定将针对其配置主数据库的备用数据库服务名称。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
--revert |
回退上一个操作。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
使用 dbaascli 实用程序执行 registerStandby 操作
要将指定的备用数据库注册到 Oracle Data Guard 中介配置,请使用 dbaascli dataguard registerStandby 命令。
对于单个备用用例,只能在主群集上运行 registerStandby 命令,因为主群集与备用群集之间存在一对一关联。
但是,在具有多个备用数据库的配置中,必须在主集群和所有现有备用集群上运行 registerStandby 命令(不包括要添加的新备用数据库)。
例如,请考虑具有两个备用数据库的设置:stdby1 和 stdby2 ,其中 stdby2 是要注册的新备用数据库。在这种情况下,请在主群集和 stdby1 上运行 registerStandby 命令,但不在 stdby2 上运行。
总之,将新备用数据库添加到现有 Oracle Data Guard 配置时,请在主集群和所有其他以前注册的备用集群上运行 registerStandby 命令,但要添加的新备用集群除外。
-
以
opc用户身份连接到 Data Guard 配置的主群集。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell。
$ sudo -s -
运行
registerStandby命令。dbaascli dataguard registerStandby --dbname <db-name> --standbyDBUniqueName <standby-DB-unique-name> --standbyDBDomain <standby-DB-domain>成功完成命令后,指定的备用数据库将注册到 Oracle Data Guard 中介配置中。
-
在 Oracle Data Guard Broker 配置中的所有现有备用群集上重复步骤 1 到步骤 3(在主群集上执行),但要注册的备用群集除外。
dbaascli dataguard deregisterStandby
在备用数据库删除期间,请先运行 dbaascli dataguard deregisterStandby 命令,然后再删除备用集群上的数据库,以从 Oracle Data Guard Broker 配置中注销备用数据库。
以 root 用户身份在主群集上运行此命令。但是,在多个备用数据库的上下文中,需要在除目标备用数据库之外的所有备用集群上执行此命令。
语法:
dbaascli dataguard deregisterStandby --dbname <value> --standbyDBUniqueName <value> [--executePrereqs] [--resume [--sessionID <value>]] [--waitForCompletion <value>]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--standbyDBUniqueName |
指定要从 Oracle Data Guard 中介配置注销的备用数据库的数据库唯一名称。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
使用 dbaascli 实用程序执行 deregisterStandby 操作
在备用数据库删除期间,请先运行 dbaascli dataguard deregisterStandby 命令,然后再删除备用集群上的数据库,以从 Oracle Data Guard Broker 配置中注销备用数据库。
对于单个备用用例,只能在主群集上运行 deregisterStandby 命令,因为主群集与备用群集之间存在一对一关联。
但是,在具有多个备用数据库的配置中,必须在主集群和所有现有备用集群上运行 deregisterStandby 命令,但不包括当前正在取消注册的备用数据库。
例如,请考虑具有两个备用数据库的设置:stdby1 和 stdby2 ,其中 stdby2 将取消注册。在这种情况下,请在主群集和 stdby1 上运行 deregisterStandby 命令,但不在 stdby2 上运行。
总之,从现有 Oracle Data Guard 配置中删除备用数据库时,请在所需备用集群上执行删除数据库操作之前,在主集群和所有其他现有备用集群上运行 deregisterStandby 命令。
-
以
opc用户身份连接到 Oracle Data Guard 配置的主群集。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell。
$ sudo -s -
运行
deregisterStandby命令。dbaascli dataguard deregisterStandby --dbname <db-name> --standbyDBUniqueName <standby-DB-unique-name>成功完成命令后,指定的备用数据库将从 Oracle Data Guard 中介配置中取消注册(删除)。
-
在 Oracle Data Guard Broker 配置中的所有现有备用群集上重复第 1 步到第 3 步(在主群集上执行),但正在注销的备用群集除外。
dbaascli dataguard configureAWR
要在 Active Data Guard 备用数据库上启用或禁用自动工作量资料档案库 (Automatic Workload Repository,AWR) 配置,请使用 dbaascli dataguard configureAWR 命令。
在要启用或禁用 AWR 配置的 Active Data Guard 备用群集上,以 root 用户身份运行此命令。如果在备用数据库添加过程中未配置 AWR,请使用此命令。
语法:
dbaascli dataguard configureAWR --dbname <value> { --action <value> | --enable | --disable } [--executePrereqs] [--resume [--sessionID <value>]]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--action |
指定是启用还是禁用 AWR。使用 --action enable 启用 AWR,使用 --action disable 禁用 AWR。为实现向后兼容,会保留 --action 参数。但是,建议使用 --enable 或 --disable,因为它们提供相同的功能,但更明确 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
使用 dbaascli 实用程序执行 configureAWR 操作
要在 ADG 备用数据库上配置 AWR,请使用 dbaascli dataguard configureAWR 命令。
-
连接到以
opc用户身份托管 ADG 备用数据库的虚拟机。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell。
$ sudo -s -
运行
configureAWR命令。要启用 AWR,请运行:
$ dbaascli dataguard configureAWR --dbname <db-name> --enable要禁用 AWR,请运行:
$ dbaascli dataguard configureAWR --dbname <db-name> --disable -
出现提示时,输入
SYS和AWR口令。成功完成命令后,ADG 备用数据库将配置有 AWR
dbaascli dataguard updateConfiguration
要更新 Data Guard 环境的传输模式或保护模式或两个参数,请使用 dbaascli dataguard updateConfiguration 命令。
以 root 用户的身份运行此命令。
在主数据库上运行更新传输模式命令时,仅更新主数据库的传输模式。要更新备用数据库的传输模式,该命令必须在该备用数据库上单独运行。
相反,在主数据库上运行更新保护模式命令时,将更新主数据库和备用数据库的保护模式。还可以从备用端更新保护模式,在这种情况下,主数据库和备用数据库都会更新。
从主数据库更新传输或保护模式时,系统会检查主数据库和备用数据库上的当前模式,仅当满足所有必需条件时才继续更新。
语法:
dbaascli dataguard updateConfiguration --dbname <value> [--protectionMode <value>] [--transportType <value>] [--standbyDGType <value>] [--executePrereqs] [--resume [--sessionID <value>]] [--waitForCompletion <value>]
参数:
| 参数 | 说明 |
|---|---|
--dbname |
指定 Oracle AI Database 名称。 |
--protectionMode |
指定在配置备用数据库时要设置的 Data Guard 保护模式。有效值:MAX_PERFORMANCE 或 MAX_AVAILABILITY。 |
--transportType |
指定在配置备用数据库时要设置的 Data Guard 传输类型。有效值:ASYNC 或 SYNC。 |
--standbyDGType |
指定要设置的备用数据库 Data Guard 类型。有效值:ADG 或 DG。 |
--executePrereqs |
运行先决条件检查并报告结果。 |
--resume |
恢复上一个操作。 |
--sessionID |
按 ID 恢复特定会话。 |
--waitForCompletion |
指定是否等待操作完成。设置为 false 以在后台运行操作。有效值:true 或 false。 |
使用 dbaascli 实用程序执行 updateConfiguration 操作
要更新传输模式和保护模式或同时更新这两个参数,请使用 dbaascli dataguard updateConfiguration 命令。
-
连接到以
opc用户身份托管 ADG 备用数据库的虚拟机。有关详细说明,请参见 Connecting to a Virtual Machine with SSH 。
-
启动 root-user 命令 shell。
$ sudo -s -
运行
updateConfiguration命令。$ dbaascli dataguard updateConfiguration --dbname <db-name> --protectionMode MAX_PERFORMANCE|MAX_AVAILABILITY --transportType ASYNC|SYNC --standbyDGType ADG|DG.成功完成命令后,指定的 Data Guard 将配置为指定的传输模式或保护模式。