ユーティリティをインストールしてテスト・マスター・データベース・サーバーの構成

データベース・サーバーにデータベース・クローン・スナップショット管理(gDBClone)スクリプトをインストールし、本番データベースをクローニングするようにサーバーを構成します。

次のデータ・リフレッシュ頻度のガイドラインを確認して、本番データベースをクローニングする最適な方法を決定し、テスト・マスターを作成します。

  • 頻繁なリフレッシュ(毎日/毎週):フィジカル・スタンバイ・データベースとしてのテスト・マスターの作成
  • 通常のリフレッシュ(隔週、毎月): RMANのDUPLICATEを使用して、アクティブ・データベースからテスト・マスターを作成します。
  • リフレッシュのタイミング(四半期、半年ごと): RMANの全データベース・バックアップからのテスト・マスターの作成

データベース・クローン・スナップショット管理スクリプトのインストール

テスト・マスターを作成するデータベース・サーバーにgDBCloneスクリプトをインストールします。

データベース・クローン・スナップショット管理(gDBClone)コマンド行ユーティリティは、ほとんどのタスクに対するルート・システム権限を必要とします。システムの管理がデータベースの管理とは異なるグループによって行われる環境では、セキュリティへの重要な懸念がある環境で、rootユーザーのアカウントやパスワードへのアクセスを制限することもできます。Sudoを使用すると、システム管理者は、セキュリティおよびコンプライアンス・プロトコルの一部としてすべてのコマンドおよび引数のログを記録しながら、特定のユーザー(またはユーザーのグループ)にrootとしてコマンドを実行する機能を付与できます。

本番マスター・サーバーとテスト・マスター・サーバーが、gDBCloneコマンドライン・ユーティリティに必要なサービス、製品およびロールを満たしていることを確認します。
  1. gDBCloneユーティリティをテスト・マスター・サーバーにダウンロードします。
  2. ログインして、sudoをrootにログインします。
    $ sudo -s
  3. RPMコマンドを使用して、gDBCloneユーティリティをインストールします。
    この例ではバージョン番号3.0.2-129.を使用します。
    # rpm -i gDBClone-3.0.2-129.noarch.rpm
    ユーティリティは、/opt/gDBCloneディレクトリにインストールされます。
  4. (オプション) gDBCloneユーティリティを新しいバージョンに更新するには、RPM更新コマンドを使用し、gDBCloneバージョン番号を入力します。
    #rpm -Uvh gDBClone-version number.noarch.rpm

ディレクトリにテスト・マスターを追加してポートを構成する

テスト・マスターをフィジカル・スタンバイ・データベースとして作成するか、またはOracle Recovery Manager (RMAN)アクティブ複製を使用する場合、本番データベース・サーバーの/etc/hostsディレクトリにあるテスト・マスター・サーバーのエントリを追加し、ポートを構成します。
  1. 本番データベース・サーバーにrootでログインし、/etc/hostsディレクトリに移動します。
  2. テスト・マスター・サーバーのエントリを追加します(tstmstr)。
    テスト・マスター・サーバーのSCAN名は、tstmstr-scanです。
    [oracle@tstmstr ~]$ srvctl config scan
    SCAN name: tstmstr-scan, Network: 1
    Subnet IPv4: 192.0.2.1/255.255.255.0/p7p1, static
    Subnet IPv6: 
    SCAN 0 IPv4 VIP: 192.0.2.7
    SCAN VIP is disabled.
    SCAN VIP is individually enabled on nodes: 
    SCAN VIP is individually disabled on nodes: 
    [oracle@tstmstr ~]$ 
    
  3. tstmstrおよびtstmstr-scan/etc/hostsディレクトリにあり、ドメインが割り当てられていることを確認します。
    [oracle@proddb ~]$ cat /etc/hosts
    203.0.113.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.0.2.6  proddb.bass1.ebsvcn.examplevcn.com  proddb
    198.51.100.1  proddb-priv.bass1.ebsvcn.examplevcn.com  proddb-priv
    192.0.2.6  proddb-vip.bass1.ebsvcn.examplevcn.com  proddb-vip
    192.0.2.6  proddb-scan.bass1.ebsvcn.examplevcn.com  proddb-scan
    192.0.2.7 tstmstr.bass1.ebsvcn.examplevcn.com	tstmstr		tstmstr-scan
  4. ポート35007は、Oracle Cloud Infrastructureコンソールのデータベース・サブネットおよびデータベース・サーバーのiptablesにあるセキュリティ・リストで開きます。
    gDBCloneユーティリティは、RMAN複製のテスト・マスター・サーバーに一時的な補助リスナー(ポート35007)を作成します。このルールにより、本番データベース・サブネットからポート35007のイングレス・ルールが作成されます。この例では、192.0.2.1/24は、本番データベースのサブネットです。
    [root@tstmstr opc]# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 35007 -s 192.0.2.1/24 -j ACCEPT
    [root@tstmstr opc]# service iptables save
    [root@tstmstr opc]# service iptables status

テスト・マスター・サーバーの構成

すべての「テスト・マスター」オプションに対して、Oracle Databaseホーム(DBホーム)を作成し、Oracle ASMクラスタ・ファイル・システム(Oracle ACFS)を構成し、テスト・マスター・サーバー・インスタンス上にTransparent Data Encryption (TDE)ウォレットを作成する必要があります。

この例では次の名前を使用しています。

  • ソース本番データベース・インスタンス: PRODDB (PDB名はPDB 1)
  • テスト・マスター・データベース・インスタンス: TSTMSTR (PDB名はPDB 1)
  1. ソース本番データベースと同じバージョンでDBホームを作成します。
    dbcli list-dbhomesコマンドは、DBホームおよびバージョンが構成されていることを確認する場合に使用します。この例ではバージョン12.1.0.2.190416.を使用します。
    [root@tstmstr ~]# dbcli create-dbhome -v 12.1.0.2.190416
    
    [root@tstmstr ~]# dbcli list-dbhomes
    
    ID                                       Name                 DB Version        Home Location                                Status    
    ---------------------------------------- -------------------- ----------------- -------------------------------------------- ----------
    547437ec-b40e-4f53-8cd5-4b4fd11f449b     OraDB12102_home1     12.1.0.2.190416    /u01/app/oracle/product/12.1.0.2/dbhome_1     Configured
    98632e4c-1907-4a6a-b60a-76577505ff92     OraDB12102_home2     12.1.0.2.190416    /u01/app/oracle/product/12.1.0.2/dbhome_2     Configured
    
    
  2. テスト・マスター・データベース用のOracle ASMクラスタ・ファイル・システム(Oracle ACFS)記憶域を作成します。
    dbcli create-dbstorageコマンドを使用すると、dataredoおよび高速リカバリ領域(fra)の記憶域を作成できます。
    
    [root@tstmstr ~]# dbcli create-dbstorage --dataSize 1024 --dbname TSTMSTR --databaseUniqueName TSTMSTR --dbstorage ACFS
    
  3. データベース記憶域のリストに記憶域が表示されていることを確認し、ファイルシステムを検証します。
    dbcli list-dbstoragesコマンドは、ファイルシステムが構成されていることを確認する場合に使用します。
    [root@tstmstr ~]# dbcli list-dbstorages
    
    ID                                       Type   DBUnique Name        Status    
    ---------------------------------------- ------ -------------------- ----------
    67123ff1-1b14-4467-87e8-3247e7ab4db2     Asm    ORCL_iad1hb          Configured
    4d2790a7-ec55-4957-a1cf-1d78ce22ce6a     Acfs   TSTMSTR              Configured
    
    ###### validate Filesystems on ACFS
    # df -h
  4. /opt/gDBClone/ディレクトリにsysパスワード・ファイルを作成します。
    これは、gDBCloneが読み取れるSYSパスワードが含まれた暗号化ファイルです。
    [root@tstmstr ~]# cd /opt/gDBClone/
    [root@tstmstr gDBClone]# /opt/gDBClone/gDBClone syspwf  -syspwf SYS.password
    [root@tstmstr gDBClone]# ls -rlt SYS.password
    -rw-rw-rw- 1 root root 33 Sept 30 04:47 SYS.password
  5. TDEウォレットをPRODDBからTSTMSTRにコピーします。
    本番データベース・サーバー上でTDEウォレットのtarを作成し、テスト・マスター・データベース・サーバーにウォレットをリストアします。
    ##### Create a tar of TDE wallet on Production Database Server
    [oracle@proddb ~]$ cd /opt/oracle/dcs/commonstore/wallets/tde/PRODDB_iad1df/
    [oracle@proddb PRODDB_iad1df]$ ls -rlt
    total 48
    -rw------- 1 oracle asmadmin  2555 Sept 24 06:26 ewallet_2019092406265698_defaultTag.p12
    -rw------- 1 oracle asmadmin  5819 Sept 24 06:26 ewallet.p12
    -rw------- 1 oracle asmadmin  5880 Sept 24 06:26 cwallet.sso 
    [oracle@proddb PRODDB_iad1df]$ tar cvf wallet.tar ./ewallet.p12  ./cwallet.sso
    ./ewallet.p12
    ./cwallet.sso
    [oracle@proddb PRODDB_iad1df]$ 
      
    ##### Restore TDE wallet on Test Master Database Server
    [oracle@tstmstr ~]$ cd /opt/oracle/dcs/commonstore/wallets/tde/TSTMSTR
    [oracle@tstmstr TSTMSTR]$ tar xvf /tmp/wallet.tar
    ./ewallet.p12
    ./cwallet.sso
    [oracle@tstmstr TSTMSTR]$
本番データベース・サーバーはOracle Data Guard用に構成されており、テスト・マスターを作成できます。