[Oracle Cloud] Oracle DB マネージドサービスを使った Data Guard 構成方法と、保護モードの変更

# はじめに

Oracle Cloud Infrastructure(以下OCI)では、Oracle DB のマネージドサービスを提供しています。
Oracle DB のマネージドサービス(DBaaS)上で、Oracle DB の Active-Standby 構成行うために、Data Guard の設定方法を記載します。

以下の設定を行っていきます

- Data Guard 構成の設定
- 保護モードを MaxAvailability に変更
- 2台目に自動バックアップの設定



# システム構成図

![1564889630226.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/4ff1f6f4-ac18-136f-4ba9-7ab0e2b93a4d.png)



# 仮想ネットワークの作成

OCIコンソール上で、仮想ネットワーク環境を作成します。以下のパラメータとシステム構成図を参考に、適切に作成します。

- Public Subnet : インスタンス用
- Private Subnet : DBaaS 1台 用
- Internet Gateway
- Service Gateway : DBaaS が自動バックアップする用
- Security List : Ingress を全て削除
- Network Security Group
  - 以下の Ingress 通信を許可
    - ICMP
    - SSH
    - TCP1521 (Oracle DB)
- Route Table
  - 0.0.0.0/0 は Internet Gateway
  - OCI NRT Object Storage : Service Gateway



# DBaaS

## 1台目のOracleDBを作成

OCIのメニューから、[Bare Metal, VM, and Exadata] へ移動し、[Create DB System] を選びます。

![1564839888488.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/8561a85b-cd8c-4366-46ac-416e823bc1dc.png)



以下のパラメータを入力します。
Data Guard 構成のため、Enterprise Edition 以上のものを選択します。

- Name your DB system : sugidbsystem01
- Hostname prefix : sugihostname01

![1564846752003.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/49e55277-fe79-183c-6236-b645a9b1f414.png)



以下のパラメータを入力します

![1564824934043.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/2525e0af-0dd0-a9eb-5161-b5eb4131d65e.png)



以下のパラメータを入力します

- Hostname Prefix : sugihostname01

![1564846851345.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/813b04a6-7c5e-c7dd-645d-65cdc358a9d9.png)



以下のパラメータを入力します。

![1564825015001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/4201cbc0-a298-3190-8662-cca9ca1ab9af.png)



以下のパラメータを入力します

- Database name : suginm01

![1564846939801.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/0ad62874-2d3c-ec04-4c07-cb02d562cc9b.png)



以下のパラメータを入力します

![1564825222949.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/7d5011e8-f087-8742-36ba-9cd60aff29d5.png)



作成ボタン押下後、Provisioning が走ります。約1時間15分ほど時間が必要です。

![1564825321448.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/9bdd591f-e29e-3a41-6f96-ca42e4872782.png)



完了となると、緑色のステータスになります。

![1564852294927.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/144f9582-026f-f7e5-c0d2-23e97446b2ca.png)



## Data Guard構成

1台目のOracle DB を構成した画面から、Databasesを選択します。

![1564852337344.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/99ec9724-662f-da65-d0b3-c5ba1f614b96.png)





Data Guard Associations から、Enable Data Guard を選択します。

![1564835876471.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/e87f044f-fdba-e0ed-2b1b-7780dc59f14a.png)



以下のパラメータを入力して、Data Guard 構成のうち2台目を構成します。

なお、2台目側の Oracle DB を構成する時に、Fault Domain は選択できません。
1台目側のOracle DBと同一のAvailability Domain が選択されていると、異なるFault Domain が自動的に選択されます (今回の場合では、Fault Domain 3 が選ばれる)

- DISPLAY NAME : 通常作成するときに指定する、DB system name のこと。sugidbsystem02 を指定する。
- Hostname Prefix : sugihostname02
- Database Name : 指定できない。1台目のDatabase Name が2台目でも同じものが使用される

![1564853064505.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/1fd3ce31-7d40-f19a-4343-aca4425a292e.png)



Data Guard の設定画面上では、PROTECTION MODE は `Maximum Performance` と TRANSPORT TYPE は `Async` 固定となっています。構成完了後、DGMGRL(Data Guard Brokerのコマンド・ユーティリティ) を使うことで、設定変更が可能です。

このタイミングで、仮想ネットワーク上で、Ingress : TCP 1521 を許可していないと、エラーになるので、注意してください。

![1564836151888.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/d923571f-3465-b3ec-a7c5-62ac44be2108.png)



UPDATINGが走ります

![1564853189643.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/d65407b4-4fa6-8e2e-3f66-f624814d6dfb.png)



約5分後、DB Systems の一覧に、Data Guard の2台目として 作成中のシステムが表示されます

- 正常終了 : 1時間15分掛かった
- エラーになったとき : 約2時間30分掛かった

![1564853539504.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/a2ae4cf1-7e43-418c-c76b-daf02b9a4f31.png)



約1時間15分待機後、AVAILAVLE状態となります。
詳細画面上で、Data Guard の Role などが表示されています。

![1564880460172.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/c8451462-7025-197d-4d09-3acc58b9f92c.png)



2台目側の詳細画面を確認すると、Database Role が、Standby となっています。
また、自動バックアップ機能が Disabled となっており、有効にすることもできませんが、Database Role を Primary へスイッチオーバーすると、設定が出来るようになるため、忘れないように後程設定を行います。

![1564886289596.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ad9fa41a-4a6f-6148-c4cb-d1db8de98eb8.png)



## 状態の確認

Data Guard を構成しているインスタンスにSSHログインします。Oracle DB を作成した時に指定した 公開鍵に紐づく秘密鍵を使用してSSHログインします。

```
[opc@client ~]$ ssh opc@sugihostname01.priv01.vcn.oraclevcn.com 
Last login: Sun Aug  4 02:00:19 2019 from 10.2.0.2 
[opc@sugihostname01 ~]$  
```



なお、Data Guard を構成しているインスタンス上で、root ユーザーへスイッチすることも可能です

```
[opc@sugihostname01 ~]$ sudo su - 
[root@sugihostname01 ~]#  
```



Default で作成されている、oracle ユーザーへスイッチします

```
[opc@sugihostname01 ~]$ sudo su - oracle 
[oracle@sugihostname01 ~]$  
```



DGMGRL(Data Guard Brokerのコマンド・ユーティリティ) がビルドインされています

```
[oracle@sugihostname01 ~]$ which dgmgrl 
/u01/app/oracle/product/18.0.0.0/dbhome_1/bin/dgmgrl 
```



DGMGRLを使って、Data Guard 構成を確認するために、まずは DGMGRL を起動します

```
[oracle@sugihostname01 ~]$ dgmgrl / 
DGMGRL for Linux: Release 18.0.0.0.0 - Production on Sun Aug 4 02:06:15 2019 
Version 18.6.0.0.0

Copyright (c) 1982, 2018, Oracle and/or its affiliates.  All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected to "suginm01_nrt1mv" 
Connected as SYSDG.
DGMGRL> 
```



Data Guard  の Configuration の詳細を確認します。様々な情報が表示されていますが注目すべきは、Data Guard の Member 一覧が表示されています。

```
DGMGRL> SHOW CONFIGURATION VERBOSE; 

Configuration - suginm01_nrt1mv_suginm01_nrt1f

  Protection Mode: MaxPerformance
  Members:
  suginm01_nrt1mv - Primary database                <==== 1台目
    suginm01_nrt1fr - Physical standby database     <==== 2台目

  Properties: 
    FastStartFailoverThreshold      = '30'
    OperationTimeout                = '30'
    TraceLevel                      = 'USER'
    FastStartFailoverLagLimit       = '30'
    CommunicationTimeout            = '180'
    ObserverReconnect               = '0'
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverPmyShutdown    = 'TRUE'
    BystandersFollowRoleChange      = 'ALL'
    ObserverOverride                = 'FALSE'
    ExternalDestination1            = ''
    ExternalDestination2            = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    ConfigurationWideServiceName    = 'suginm01_CFG'

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS 

DGMGRL> 
```



なお、表示されている Member の名前は、OCI のコンソール上ではDatabase Unique Name を見ると確認できます

![1564884753219.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/a7e81536-51c8-e47b-bf29-b116128b020a.png)



確認したDatabase Unique Nameを使用して、SHOW DATABASE コマンドを実行すると、Data Guard 構成としての Role が PRIMARYであることを確認できます。 

```
DGMGRL> SHOW DATABASE VERBOSE suginm01_nrt1mv; 

Database - suginm01_nrt1mv

  Role:               PRIMARY
  Intended State:     TRANSPORT-ON
  Instance(s): 
    suginm01

  Properties: 
    DGConnectIdentifier             = 'suginm01_nrt1mv'
    ObserverConnectIdentifier       = ''
    LogXptMode                      = 'ASYNC'
    RedoRoutes                      = ''
    DelayMins                       = '0'
    Binding                         = 'optional'
    MaxFailure                      = '0'
    MaxConnections                  = '1'
    ReopenSecs                      = '300'
    NetTimeout                      = '30'
    RedoCompression                 = 'DISABLE'
    LogShipping                     = 'ON'
    PreferredApplyInstance          = ''
    ApplyInstanceTimeout            = '0'
    ApplyLagThreshold               = '30'
    TransportLagThreshold           = '30'
    TransportDisconnectedThreshold  = '30' 
    ApplyParallel                   = 'AUTO'
    ApplyInstances                  = '0'
    StandbyFileManagement           = 'AUTO'
    ArchiveLagTarget                = '0'
    LogArchiveMaxProcesses          = '8'
    LogArchiveMinSucceedDest        = '1'
    DataGuardSyncLatency            = '0'
    DbFileNameConvert               = ''
    LogFileNameConvert              = ''
    FastStartFailoverTarget         = ''
    InconsistentProperties          = '(monitor)'
    InconsistentLogXptProps         = '(monitor)'
    SendQEntries                    = '(monitor)'
    LogXptStatus                    = '(monitor)'
    RecvQEntries                    = '(monitor)'
    PreferredObserverHosts          = ''
    HostName                        = 'sugihostname01'
    StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sugihostname01)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=suginm01_nrt1mv_DGMGRL.priv01.vcn.oraclevcn.com)(INSTANCE_NAME=suginm01)(SERVER=DEDICATED)))'
    OnlineArchiveLocation           = 'LOCATION=USE_DB_RECOVERY_FILE_DEST MANDATORY'
    OnlineAlternateLocation         = ''
    StandbyArchiveLocation          = 'LOCATION=USE_DB_RECOVERY_FILE_DEST MANDATORY'
    StandbyAlternateLocation        = ''
    LogArchiveTrace                 = '0'
    LogArchiveFormat                = '%t_%s_%r.dbf'
    TopWaitEvents                   = '(monitor)'
    SidName                         = '(monitor)'

  Log file locations:
    Alert log               : /u01/app/oracle/diag/rdbms/suginm01_nrt1mv/suginm01/trace/alert_suginm01.log
    Data Guard Broker log   : /u01/app/oracle/diag/rdbms/suginm01_nrt1mv/suginm01/trace/drcsuginm01.log

Database Status:
SUCCESS

DGMGRL> 
```



同様に、2台目の Database Unique Name を確認します

![1564884923639.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/c454be10-99a2-9247-fed9-6e7b275836a1.png)



SHOW DATABASE コマンドで、2台目の詳細情報を確認します。Data Guard の Role は、PHYSICAL STANDBY であることが確認できます。

```
DGMGRL> SHOW DATABASE VERBOSE suginm01_nrt1fr; 

Database - suginm01_nrt1fr

  Role:               PHYSICAL STANDBY
  Intended State:     APPLY-ON
  Transport Lag:      0 seconds (computed 8 seconds ago) 
  Apply Lag:          0 seconds (computed 8 seconds ago)
  Average Apply Rate: 2.00 KByte/s
  Active Apply Rate:  416.00 KByte/s 
  Maximum Apply Rate: 575.00 KByte/s
  Real Time Query:    OFF
  Instance(s):
    suginm01

  Properties:
    DGConnectIdentifier             = 'suginm01_nrt1fr'
    ObserverConnectIdentifier       = ''
    LogXptMode                      = 'ASYNC'
    RedoRoutes                      = ''
    DelayMins                       = '0'
    Binding                         = 'optional'
    MaxFailure                      = '0'
    MaxConnections                  = '1'
    ReopenSecs                      = '300'
    NetTimeout                      = '30'
    RedoCompression                 = 'DISABLE'
    LogShipping                     = 'ON'
    PreferredApplyInstance          = ''
    ApplyInstanceTimeout            = '0'
    ApplyLagThreshold               = '30'
    TransportLagThreshold           = '30'
    TransportDisconnectedThreshold  = '30'
    ApplyParallel                   = 'AUTO'
    ApplyInstances                  = '0'
    StandbyFileManagement           = 'AUTO'
    ArchiveLagTarget                = '0'
    LogArchiveMaxProcesses          = '8'
    LogArchiveMinSucceedDest        = '1'
    DataGuardSyncLatency            = '0'
    DbFileNameConvert               = ''
    LogFileNameConvert              = ''
    FastStartFailoverTarget         = ''
    InconsistentProperties          = '(monitor)'
    InconsistentLogXptProps         = '(monitor)'
    SendQEntries                    = '(monitor)'
    LogXptStatus                    = '(monitor)'
    RecvQEntries                    = '(monitor)'
    PreferredObserverHosts          = ''
    HostName                        = 'sugihostname02'
    StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sugihostname02)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=suginm01_nrt1fr_DGMGRL.priv01.vcn.oraclevcn.com)(INSTANCE_NAME=suginm01)(SERVER=DEDICATED)))'
    OnlineArchiveLocation           = 'LOCATION=USE_DB_RECOVERY_FILE_DEST MANDATORY'
    OnlineAlternateLocation         = ''
    StandbyArchiveLocation          = 'LOCATION=USE_DB_RECOVERY_FILE_DEST MANDATORY'
    StandbyAlternateLocation        = ''
    LogArchiveTrace                 = '0'
    LogArchiveFormat                = '%t_%s_%r.dbf'
    TopWaitEvents                   = '(monitor)'
    SidName                         = '(monitor)'

  Log file locations:
    Alert log               : /u01/app/oracle/diag/rdbms/suginm01_nrt1fr/suginm01/trace/alert_suginm01.log
    Data Guard Broker log   : /u01/app/oracle/diag/rdbms/suginm01_nrt1fr/suginm01/trace/drcsuginm01.log

Database Status:
SUCCESS

DGMGRL> 
```



# Data Guard のデータ保護モードをMaxAvailabilityに変更

Data Guard には、コスト・可用性・パフォーマンス・データ保護のバランスをとるために、データ保護モードが3種類用意されています。下の表は3種類の特徴と概要を示したものです

参考元 : https://www.oracle.com/technetwork/jp/content/twp-dataguard-11gr2-134591-ja.pdf

| モード             | データ損失のリスク                       | 転送  | スタンバイ・データベースからの確認がない場合の処理           |
| ------------------ | ---------------------------------------- | ----- | ------------------------------------------------------------ |
| 最大保護           | データ損失ゼロ<br />二重障害保護         | SYNC  | トランザクションのREDOがディスクに書き込まれたことを示すスタンバイ・データベースからの確認を受信してから、コミットの成功をアプリケーションに通知します。 |
| 最大可用性         | ハイブリッド<br />損失の可能性あり       | SYNC  | スタンバイ・データベースからの確認を受信するか、または NET_TIMEOUT しきい値に指定された期間が過ぎたら、いずれの場合もコミットの成功をアプリケーションに通知します。 |
| 最大パフォーマンス | 最小限のデータ保護<br />損失の可能性あり | ASYNC | プライマリはスタンバイからの確認を待つことなく、コミットの成功をアプリケーションに通知します。 |



DGMGRL(Data Guard Brokerのコマンド・ユーティリティ)を使用して、最大可用性(MaxAvailability) モードに変更します

```
edit database suginm01_nrt1fr set property 'logXptMode'='SYNC';
edit database suginm01_nrt1mv set property 'logXptMode'='SYNC';
edit configuration set protection mode as maxavailability;
```



実行例

```
DGMGRL> edit database suginm01_nrt1fr set property 'logXptMode'='SYNC'; 
Property "logXptMode" updated 
DGMGRL> edit database suginm01_nrt1mv set property 'logXptMode'='SYNC'; 
Property "logXptMode" updated 
DGMGRL> edit configuration set protection mode as maxavailability; 
Succeeded. 
```



設定変更後の状態を確認します

```
DGMGRL> SHOW CONFIGURATION VERBOSE;  

Configuration - suginm01_nrt1mv_suginm01_nrt1f 

  Protection Mode: MaxAvailability          <============== MaxAvailabilityになっている
  Members:
  suginm01_nrt1mv - Primary database
    suginm01_nrt1fr - Physical standby database  

  Properties:
    FastStartFailoverThreshold      = '30'
    OperationTimeout                = '30'
    TraceLevel                      = 'USER'
    FastStartFailoverLagLimit       = '30'
    CommunicationTimeout            = '180'
    ObserverReconnect               = '0'
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverPmyShutdown    = 'TRUE'
    BystandersFollowRoleChange      = 'ALL'
    ObserverOverride                = 'FALSE' 
    ExternalDestination1            = ''
    ExternalDestination2            = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    ConfigurationWideServiceName    = 'suginm01_CFG'

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS

DGMGRL> 
```



1台目

```
DGMGRL> SHOW DATABASE VERBOSE suginm01_nrt1mv;  

Database - suginm01_nrt1mv

  Role:               PRIMARY
  Intended State:     TRANSPORT-ON
  Instance(s): 
    suginm01

  Properties: 
    DGConnectIdentifier             = 'suginm01_nrt1mv'
    ObserverConnectIdentifier       = ''
    LogXptMode                      = 'SYNC'         <============== SYNCになっている
省略
```



2台目

```
DGMGRL> SHOW DATABASE VERBOSE suginm01_nrt1fr      

Database - suginm01_nrt1fr

  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
  Active Apply Rate:  517.00 KByte/s
  Maximum Apply Rate: 575.00 KByte/s
  Real Time Query:    OFF
  Instance(s):
    suginm01

  Properties: 
    DGConnectIdentifier             = 'suginm01_nrt1fr'
    ObserverConnectIdentifier       = ''
    LogXptMode                      = 'SYNC'         <============== SYNCになっている
省略
```





# スイッチオーバーのテスト

DGMGRL(Data Guard Brokerのコマンド・ユーティリティ)からスイッチオーバーの操作が出来ますが、OCI のコンソール画面上からも実行が可能です。

Switchover ボタンをクリックします

![1564887942255.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/43f8d623-aebd-b109-6a23-e6b5171a0ac2.png)



パスワードが求められます

![1564888002188.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/e93a67c2-6443-bb5d-9444-82c55f73f40b.png)



2, 3分後に、UPDATING となります

![1564888091807.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/1c5c8e59-3d87-97c5-f55e-67fd2bbc988b.png)



コマンド `SHOW CONFIGURATION VERBOSE `の実行結果の下の方に、switchover が発生した status が確認できます。

```
DGMGRL> SHOW CONFIGURATION VERBOSE;   

Configuration - suginm01_nrt1mv_suginm01_nrt1f

  Protection Mode: MaxAvailability
  Members:
  suginm01_nrt1mv - Primary database
    suginm01_nrt1fr - Physical standby database 
 
  Properties:
    FastStartFailoverThreshold      = '30'
    OperationTimeout                = '30'
    TraceLevel                      = 'USER'
    FastStartFailoverLagLimit       = '30'
    CommunicationTimeout            = '180'
    ObserverReconnect               = '0'
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverPmyShutdown    = 'TRUE'
    BystandersFollowRoleChange      = 'ALL'
    ObserverOverride                = 'FALSE'
    ExternalDestination1            = ''
    ExternalDestination2            = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    ConfigurationWideServiceName    = 'suginm01_CFG'

Fast-Start Failover: DISABLED 

Configuration Status:
ORA-16534: switchover, failover or convert operation in progress
DGM-17017: unable to determine configuration status
```



数分後、Switchover が完了します

```
DGMGRL> SHOW CONFIGURATION VERBOSE; 

Configuration - suginm01_nrt1mv_suginm01_nrt1f

  Protection Mode: MaxAvailability
  Members:
  suginm01_nrt1fr - Primary database            <============ 2つが入れ替わっている
    suginm01_nrt1mv - Physical standby database <============ 2つが入れ替わっている

  Properties: 
    FastStartFailoverThreshold      = '30'
    OperationTimeout                = '30'
    TraceLevel                      = 'USER'
    FastStartFailoverLagLimit       = '30'
    CommunicationTimeout            = '180'
    ObserverReconnect               = '0'
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverPmyShutdown    = 'TRUE'
    BystandersFollowRoleChange      = 'ALL'
    ObserverOverride                = 'FALSE'
    ExternalDestination1            = '' 
    ExternalDestination2            = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    ConfigurationWideServiceName    = 'suginm01_CFG'

Fast-Start Failover: DISABLED 

Configuration Status:
SUCCESS

DGMGRL> 
```



# [重要] 2台目で自動バックアップの設定

Data Guard 構成をした直後では、2台目の インスタンスに、自動バックアップの設定が出来ませんでした。スイッチオーバーして2台目を Primary にすることによって、自動バックアップの設定を行うことが出来ます。

2台目をPrimaryにした直後の画面から、Configure Automatic Backups を選択します。

![1564888782542.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/5b50723f-2a96-f36c-01e2-77f0b1eb66bb.png)



60日間で有効にします。

![1564889520403.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/83eadc7f-32c1-1af5-bef0-7b10f384cfac.png)



有効にした直後、バックアップが走ります

![1564889545705.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/88f7cac7-2766-8645-afa1-80c9415bbb76.png)

# [Option] 2台目で環境変数設定
Data Guard 2台目のインスタンスでは、Oracle として必要な環境変数 `ORACLE_HOME` と `ORACLE_SID` が設定されていません。
1台目では設定されていたのですが・・・。
しかたないので、2台目で環境変数の設定を行います

まず、2台目のインスタンスへ SSH ログインして、oracle ユーザーへスイッチをします

```
[opc@client-6032 ~]$ ssh opc@sugihostname02.priv01.vcn.oraclevcn.com 
Last login: Sat Aug 31 13:49:03 2019 from 10.2.0.32 
[opc@sugihostname02 ~]$ sudo su - oracle 
[oracle@sugihostname02 ~]$  
```

環境変数の設定をします。

```
export ORACLE_HOME=/u01/app/oracle/product/18.0.0.0/dbhome_1
export ORACLE_SID=suginm01
echo 'export ORACLE_HOME=/u01/app/oracle/product/18.0.0.0/dbhome_1' >> ~/.bashrc
echo 'export ORACLE_SID=suginm01' >> ~/.bashrc
```

また、Oracle の各種管理で必要なバイナリは、PATH が設定されていないため、これも設定を行います

```
export PATH=$PATH:/u01/app/18.0.0.0/grid/bin/
echo 'export PATH=$PATH:/u01/app/18.0.0.0/grid/bin/' >> ~/.bashrc
```



# 参考URL

https://docs.cloud.oracle.com/iaas/Content/Database/Tasks/usingdataguard.htm

https://minamin96.hatenablog.com/entry/2018/12/23/125124

https://qiita.com/shirok/items/2eb68c3777f34a57f632