Oracle RMANメモ


OracleデータベースのバックアップをRMAN使ってとる、という話が久しぶりに回ってきたけど、すっかり忘却していたのでメモ書き

とりあえずWindows Server 2019にOracle 18c XEをインストールして確認

各種コマンド例

LISTNERの状態確認

「lsnrctl status」でLISTNERの状態を確認

C:\Users\administrator.VM2>lsnrctl status

LSNRCTL for 64-bit Windows: Version 18.0.0.0.0 - Production on 25-6月 -2021 10:32:12

Copyright (c) 1991, 2018, Oracle.  All rights reserved.

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracledb.adosakana.local(PORT=1521)))に接続中
リスナーのステータス
------------------------
別名                      LISTENER
バージョン                TNSLSNR for 64-bit Windows: Version 18.0.0.0.0 - Production
開始日                    22-6月 -2021 16:42:40
稼働時間                  2 日 17 時間 49 分 32 秒
トレース・レベル          off
セキュリティ              ON: Local OS Authentication
SNMP                      OFF
デフォルト・サービス           XE
パラメータ・ファイル      D:\app\administrator\product\18.0.0\dbhomeXE\network\admin\listener.ora
ログ・ファイル            D:\app\administrator\product\18.0.0\diag\tnslsnr\oracledb\listener\alert\log.xml
リスニング・エンドポイントのサマリー...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracledb.adosakana.local)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=127.0.0.1)(PORT=5500))(Security=(my_wallet_directory=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\admin\XE\xdb_wallet))(Presentation=HTTP)(Session=RAW))
サービスのサマリー...
サービス"3bba54f9890046b4b3f6a6c7a4e4e597"には、1件のインスタンスがあります。
  インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"CLRExtProc"には、1件のインスタンスがあります。
  インスタンス"CLRExtProc"、状態UNKNOWNには、このサービスに対する1件のハンドラがあります...
サービス"XE"には、1件のインスタンスがあります。
  インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"XEXDB"には、1件のインスタンスがあります。
  インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"xepdb1"には、1件のインスタンスがあります。
  インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラがあります...
コマンドは正常に終了しました。

C:\Users\administrator.VM2>

アーカイブログの設定確認

Oracleデータベースのバックアップを行う場合、ARCHIVELOGモードが有効になっていないと、オンラインバックアップが行えないので、sqlplusコマンドを使ってデータベースに接続し、log_mode の値を確認する。

C:\Users\administrator.VM2>sqlplus / as sysdba

SQL*Plus: Release 18.0.0.0.0 - Production on 金 6月 25 10:35:11 2021
Version 18.4.0.0.0

Copyright (c) 1982, 2018, Oracle.  All rights reserved.



Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
に接続されました。
SQL> select log_mode from v$database;

LOG_MODE
------------------------
ARCHIVELOG

SQL> exit
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0との接続が切断されました。

C:\Users\administrator.VM2>

上記は「ARCHIVELOG」で有効になっている、ということ。

ここが「NOARCHIVELOG」だと有効になっていない、ということになる。

アーカイブログがどこに出力されるかを「archive log list」を実行して確認する。

SQL> archive log list
データベース・ログ・モード     アーカイブ・モード
自動アーカイブ                 有効
アーカイブ先                    D:\app\administrator\product\18.0.0\dbhomeXE\RDBMS
最も古いオンライン・ログ順序   47
アーカイブする次のログ順序    49
現行のログ順序               49
SQL> 

また、実際に出力される時にどういうファイル名となるかは「select * from v$logfile;」を実行して確認出来る。(こちらは最後に”;”を忘れない)

SQL> select * from v$logfile;

    GROUP# STATUS         TYPE
---------- -------------- --------------
MEMBER
--------------------------------------------------------------------------------
IS_REC     CON_ID
------ ----------
         3                ONLINE
D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\REDO03.LOG
NO              0

         2                ONLINE
D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\REDO02.LOG
NO              0

    GROUP# STATUS         TYPE
---------- -------------- --------------
MEMBER
--------------------------------------------------------------------------------
IS_REC     CON_ID
------ ----------

         1                ONLINE
D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\REDO01.LOG
NO              0


SQL>

RMANの既存設定確認

RMANに設定されている内容を確認するには「show all;」を実行して確認します。

C:\Users\administrator.VM2>rman target /

Recovery Manager: Release 18.0.0.0.0 - Production on 金 6月 25 15:40:36 2021
Version 18.4.0.0.0

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

ターゲット・データベース: XE (DBID=2957026582)に接続されました

RMAN> show all;

db_unique_name XEのデータベースにおけるRMAN構成パラメータ:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\SNCFXE.ORA'; # default

RMAN>

コントロール/SPFILEの取り扱い

コントロールファイル/SPFILEの自動バックアップが設定されているかは、rmanコマンドで「show controlfile autobackup;」を実行することで確認出来る。

C:\Users\administrator.VM2>rman target /

Recovery Manager: Release 18.0.0.0.0 - Production on 金 6月 25 15:40:36 2021
Version 18.4.0.0.0

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

ターゲット・データベース: XE (DBID=2957026582)に接続されました

RMAN> SHOW CONTROLFILE AUTOBACKUP ;

db_unique_name XEのデータベースにおけるRMAN構成パラメータ:
CONFIGURE CONTROLFILE AUTOBACKUP ON;

RMAN> SHOW CONTROLFILE AUTOBACKUP FORMAT;

リカバリ・カタログのかわりにターゲット・データベース制御ファイルを使用しています
db_unique_name XEのデータベースにおけるRMAN構成パラメータ:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default

RMAN> 

バックアップ一覧の確認

現在までにRMAN経由でバックアップした一覧は「list backup;」で確認できる。

RMAN> list backup;


バックアップ・セットのリスト
===================


BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
1       Incr 0  1.07G      SBT_TAPE    00:02:00     21-06-22
        BPキー: 1   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T165535
        ハンドル: 1163_XE_01022907_1_1   メディア: V_342_2322
  バックアップ・セット1のデータファイルのリスト
  File LV Type Ckp SCN    Ckp時間  Abs Fuz SCN Sparse Name
  ---- -- ---- ---------- -------- ----------- ------ ----
  1    0  Incr 1563429    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\SYSTEM01.DBF
  3    0  Incr 1563429    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\SYSAUX01.DBF
  4    0  Incr 1563429    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\UNDOTBS01.DBF
  7    0  Incr 1563429    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\USERS01.DBF

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
2       Incr 0  522.00M    SBT_TAPE    00:00:04     21-06-22
        BPキー: 2   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T165535
        ハンドル: 1163_XE_02022944_1_1   メディア: V_342_2323
  バックアップ・セット2のデータファイルのリスト
  コンテナID: 3、PDB名: XEPDB1
  File LV Type Ckp SCN    Ckp時間  Abs Fuz SCN Sparse Name
  ---- -- ---- ---------- -------- ----------- ------ ----
  9    0  Incr 1563669    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\SYSTEM01.DBF
  10   0  Incr 1563669    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\SYSAUX01.DBF
  11   0  Incr 1563669    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\UNDOTBS01.DBF
  12   0  Incr 1563669    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\USERS01.DBF

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
3       Incr 0  511.00M    SBT_TAPE    00:00:04     21-06-22
        BPキー: 3   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T165535
        ハンドル: 1163_XE_0302294c_1_1   メディア: V_342_2324
  バックアップ・セット3のデータファイルのリスト
  コンテナID: 2、PDB名: PDB$SEED
  File LV Type Ckp SCN    Ckp時間  Abs Fuz SCN Sparse Name
  ---- -- ---- ---------- -------- ----------- ------ ----
  5    0  Incr 1452518    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\PDBSEED\SYSTEM01.DBF
  6    0  Incr 1452518    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\PDBSEED\SYSAUX01.DBF
  8    0  Incr 1452518    21-06-22              NO    D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\PDBSEED\UNDOTBS01.DBF

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
4       Incr 0  18.00M     SBT_TAPE    00:00:01     21-06-22
        BPキー: 4   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T165535
        ハンドル: 1163_XE_0402294j_1_1   メディア: V_342_2325
  含まれている制御ファイル: Ckp SCN: 1563678      Ckp時間: 21-06-22

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
5       Full    18.00M     SBT_TAPE    00:00:00     21-06-22
        BPキー: 5   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T165757
        ハンドル: c-2957026582-20210622-00   メディア: V_342_2326
  SPFILEも含まれます: 修正時間: 21-06-22
  SPFILE db_unique_name: XE
  含まれている制御ファイル: Ckp SCN: 1563687      Ckp時間: 21-06-22

BSキー  サイズ       デバイス・タイプ経過時間終了時間
------- ---------- ----------- ------------ --------
6       88.00M     SBT_TAPE    00:01:06     21-06-22
        BPキー: 6   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T165921
        ハンドル: 1163_XE_06022979_1_1   メディア: V_342_2327

  バックアップ・セット6のアーカイブ・ログのリスト
  Thrd Seq     Low SCN    Low時間  Next SCN   Next Time
  ---- ------- ---------- -------- ---------- ---------
  1    2       1440543    21-06-22 1460361    21-06-22
  1    3       1460361    21-06-22 1562252    21-06-22
  1    4       1562252    21-06-22 1563792    21-06-22
  1    5       1563792    21-06-22 1563800    21-06-22

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
7       Full    18.00M     SBT_TAPE    00:00:01     21-06-22
        BPキー: 7   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210622T170037
        ハンドル: c-2957026582-20210622-01   メディア: V_342_2328
  SPFILEも含まれます: 修正時間: 21-06-22
  SPFILE db_unique_name: XE
  含まれている制御ファイル: Ckp SCN: 1563859      Ckp時間: 21-06-22

<略>
BSキー  サイズ       デバイス・タイプ経過時間終了時間
------- ---------- ----------- ------------ --------
111     11.00M     SBT_TAPE    00:01:05     21-06-25
        BPキー: 111   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210625T135700
        ハンドル: 1420_XE_3j029rlc_1_1   メディア: V_342_2765

  バックアップ・セット111のアーカイブ・ログのリスト
  Thrd Seq     Low SCN    Low時間  Next SCN   Next Time
  ---- ------- ---------- -------- ---------- ---------
  1    52      1831218    21-06-25 1839292    21-06-25

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
112     Full    19.00M     SBT_TAPE    00:00:01     21-06-25
        BPキー: 112   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210625T135805
        ハンドル: c-2957026582-20210625-0d   メディア: V_342_2766
  SPFILEも含まれます: 修正時間: 21-06-22
  SPFILE db_unique_name: XE
  含まれている制御ファイル: Ckp SCN: 1839334      Ckp時間: 21-06-25

BSキー  サイズ       デバイス・タイプ経過時間終了時間
------- ---------- ----------- ------------ --------
113     20.00M     SBT_TAPE    00:01:05     21-06-25
        BPキー: 113   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210625T145912
        ハンドル: 1426_XE_3l029va0_1_1   メディア: V_342_2772

  バックアップ・セット113のアーカイブ・ログのリスト
  Thrd Seq     Low SCN    Low時間  Next SCN   Next Time
  ---- ------- ---------- -------- ---------- ---------
  1    53      1839292    21-06-25 1845342    21-06-25

BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
114     Full    19.00M     SBT_TAPE    00:00:00     21-06-25
        BPキー: 114   ステータス: AVAILABLE  圧縮: NO  タグ: TAG20210625T150028
        ハンドル: c-2957026582-20210625-0e   メディア: V_342_2773
  SPFILEも含まれます: 修正時間: 21-06-22
  SPFILE db_unique_name: XE
  含まれている制御ファイル: Ckp SCN: 1845469      Ckp時間: 21-06-25

RMAN>

バックアップ手法について

Oracleデータベースをバックアップする時に気にするもの
・データベース本体
・アーカイブログ
・コントロールファイル/SPFILE


Oracle 19 [Backup and Recovery User’s Guide]
 [4 RMANクライアントの起動および操作]
 [5 RMAN環境の構成]
Oracle 19 [Real Application Clusters管理およびデプロイメント・ガイド]
 [7.4 制御ファイルおよびSPFILEを自動的にバックアップするようなRMANの構成]

手動で実行

[2.4.2 ARCHIVELOGモードでのデータベースのバックアップ]に記載されている「BACKUP DATABASE PLUS ARCHIVELOG;」を実行した例

デフォルトのRMAN設定では”CONFIGURE DEFAULT DEVICE TYPE TO DISK; “と設定さてており、何も指定がない場合はディスク上に保存されることになっている。

RMAN> backup database plus archivelog;


backupを21-06-25で開始しています
現在のログがアーカイブされました。
チャネル: ORA_DISK_1が割り当てられました
チャネルORA_DISK_1: SID=287 デバイス・タイプ=DISK
チャネルORA_DISK_1: アーカイブ・ログ・バックアップ・セットを開始しています
チャネルORA_DISK_1: バックアップ・セットにアーカイブ・ログを指定しています
入力アーカイブ・ログ・スレッド=1 順序=56 レコードID=55 スタンプ=1076174677
チャネルORA_DISK_1: ピース1 (21-06-25)を起動します
チャネルORA_DISK_1: ピース1 (21-06-25)が完了しました
ピース・ハンドル=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\3R02A7QN_1_1 タグ=TAG20210625T172439 コメント=NONE
チャネルORA_DISK_1: バックアップ・セットが完了しました。経過時間: 00:00:01
backupを21-06-25で終了しました

backupを21-06-25で開始しています
チャネルORA_DISK_1の使用
チャネルORA_DISK_1: フル・データファイル・バックアップ・セットを開始しています
チャネルORA_DISK_1: バックアップ・セットにデータファイルを指定しています
入力データファイル ファイル番号=00001 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\SYSTEM01.DBF
入力データファイル ファイル番号=00003 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\SYSAUX01.DBF
入力データファイル ファイル番号=00004 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\UNDOTBS01.DBF
入力データファイル ファイル番号=00007 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\USERS01.DBF
チャネルORA_DISK_1: ピース1 (21-06-25)を起動します
チャネルORA_DISK_1: ピース1 (21-06-25)が完了しました
ピース・ハンドル=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\3S02A7QO_1_1 タグ=TAG20210625T172440 コメント=NONE
チャネルORA_DISK_1: バックアップ・セットが完了しました。経過時間: 00:00:15
チャネルORA_DISK_1: フル・データファイル・バックアップ・セットを開始しています
チャネルORA_DISK_1: バックアップ・セットにデータファイルを指定しています
入力データファイル ファイル番号=00010 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\SYSAUX01.DBF
入力データファイル ファイル番号=00009 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\SYSTEM01.DBF
入力データファイル ファイル番号=00011 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\UNDOTBS01.DBF
入力データファイル ファイル番号=00012 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\XEPDB1\USERS01.DBF
チャネルORA_DISK_1: ピース1 (21-06-25)を起動します
チャネルORA_DISK_1: ピース1 (21-06-25)が完了しました
ピース・ハンドル=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\3T02A7R7_1_1 タグ=TAG20210625T172440 コメント=NONE
チャネルORA_DISK_1: バックアップ・セットが完了しました。経過時間: 00:00:07
チャネルORA_DISK_1: フル・データファイル・バックアップ・セットを開始しています
チャネルORA_DISK_1: バックアップ・セットにデータファイルを指定しています
入力データファイル ファイル番号=00006 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\PDBSEED\SYSAUX01.DBF
入力データファイル ファイル番号=00005 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\PDBSEED\SYSTEM01.DBF
入力データファイル ファイル番号=00008 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\PDBSEED\UNDOTBS01.DBF
チャネルORA_DISK_1: ピース1 (21-06-25)を起動します
チャネルORA_DISK_1: ピース1 (21-06-25)が完了しました
ピース・ハンドル=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\3U02A7RF_1_1 タグ=TAG20210625T172440 コメント=NONE
チャネルORA_DISK_1: バックアップ・セットが完了しました。経過時間: 00:00:07
backupを21-06-25で終了しました

backupを21-06-25で開始しています
現在のログがアーカイブされました。
チャネルORA_DISK_1の使用
チャネルORA_DISK_1: アーカイブ・ログ・バックアップ・セットを開始しています
チャネルORA_DISK_1: バックアップ・セットにアーカイブ・ログを指定しています
入力アーカイブ・ログ・スレッド=1 順序=57 レコードID=56 スタンプ=1076174710
チャネルORA_DISK_1: ピース1 (21-06-25)を起動します
チャネルORA_DISK_1: ピース1 (21-06-25)が完了しました
ピース・ハンドル=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\3V02A7RM_1_1 タグ=TAG20210625T172510 コメント=NONE
チャネルORA_DISK_1: バックアップ・セットが完了しました。経過時間: 00:00:01
backupを21-06-25で終了しました

Control File and SPFILE Autobackupを21-06-25で開始しています
ピース・ハンドル=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\DBHOMEXE\DATABASE\C-2957026582-20210625-11 コメント=NONE
Control File and SPFILE Autobackupを21-06-25で終了しました

RMAN>

sbt_tapeに変える場合、以前だとallocate cahnnelしていたが[B 非推奨になったRMAN構文]に含まれている。

しかし、[5.1.2 バックアップ用のデフォルト・デバイスの構成: ディスクまたはSBT]から記述を見ていくと[5.1.4.1 チャネルの構成について]と[5.1.4.4 構成済チャネルの手動での変更]を見ると、一時的に変更する場合は「ALLOCATE CHANNEL」のままで良いようだ。

CommvaultのOralce Agentがセットアップされている環境で試すと、Commvaultに引き渡す場合のパラメータが適合していないようで、失敗する。

RMAN> run {
2> allocate channel ch1 device type 'SBT_TAPE';
3> backup database plus archivelog;
4> }

チャネル: ORA_DISK_1がリリースされました
チャネル: ch1が割り当てられました
チャネルch1: SID=287 デバイス・タイプ=SBT_TAPE
チャネルch1: CommVault Systems for Oracle: Version 11.0.0(BUILD80)


backupを21-06-25で開始しています
現在のログがアーカイブされました。
チャネルch1: アーカイブ・ログ・バックアップ・セットを開始しています
チャネルch1: バックアップ・セットにアーカイブ・ログを指定しています
入力アーカイブ・ログ・スレッド=1 順序=56 レコードID=55 スタンプ=1076174677
入力アーカイブ・ログ・スレッド=1 順序=57 レコードID=56 スタンプ=1076174710
入力アーカイブ・ログ・スレッド=1 順序=58 レコードID=57 スタンプ=1076175527
チャネルch1: ピース1 (21-06-25)を起動します
チャネル: ch1がリリースされました
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: backup plus archivelogコマンドが06/25/2021 17:39:23で失敗しました
ORA-19506: シーケンシャル・ファイルの作成に失敗しました。ファイル名="4102a8l8_1_1"、パラメータ=""
ORA-27028: skgfqcre: sbtbackupからエラーが戻されました。
ORA-19511: RMAN以外の、メディア・マネージャまたはベンダー固有の障害。エラー・テキスト:
   CreateOraObject20:

RMAN>

Commvaultマニュアルにある[RMAN Example: Performing Oracle Full Backups]のサンプル通りに実行してみる。

RMAN> run {
2> allocate channel ch1 type 'sbt_tape';
3> allocate channel ch2 type 'sbt_tape';
4> allocate channel ch3 type 'sbt_tape';
5> allocate channel ch4 type 'sbt_tape';
6>
7> setlimit channel ch1 maxopenfiles 8;
8> setlimit channel ch2 maxopenfiles 8;
9> setlimit channel ch3 maxopenfiles 8;
10> setlimit channel ch4 maxopenfiles 8;
11>
12> backup incremental level = 0
13> filesperset = 4 format '%d_%U_%t'
14> database include current controlfile;
15> }

チャネル: ch1が割り当てられました
チャネルch1: SID=287 デバイス・タイプ=SBT_TAPE
チャネルch1: CommVault Systems for Oracle: Version 11.0.0(BUILD80)

RMAN-06908: 警告: 操作は割り当てられたチャネルでパラレルに実行しません
RMAN-06909: 警告: パラレル化にはEnterprise Editionが必要です
チャネル: ch2が割り当てられました
チャネルch2: SID=41 デバイス・タイプ=SBT_TAPE
チャネルch2: CommVault Systems for Oracle: Version 11.0.0(BUILD80)

チャネル: ch3が割り当てられました
チャネルch3: SID=266 デバイス・タイプ=SBT_TAPE
チャネルch3: CommVault Systems for Oracle: Version 11.0.0(BUILD80)

チャネル: ch4が割り当てられました
チャネルch4: SID=40 デバイス・タイプ=SBT_TAPE
チャネルch4: CommVault Systems for Oracle: Version 11.0.0(BUILD80)





backupを21-06-25で開始しています
チャネルch1: 増分レベル0のデータファイル・バックアップ・セットを開始しています
チャネルch1: バックアップ・セットにデータファイルを指定しています
入力データファイル ファイル番号=00001 名前=D:\APP\ADMINISTRATOR\PRODUCT\18.0.0\ORADATA\XE\SYSTEM01.DBF
チャネルch1: ピース1 (21-06-25)を起動します
チャネル: ch1がリリースされました
チャネル: ch2がリリースされました
チャネル: ch3がリリースされました
チャネル: ch4がリリースされました
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: backupコマンド(ch1チャネル上)が06/25/2021 18:00:56で失敗しました
ORA-19506: シーケンシャル・ファイルの作成に失敗しました。ファイル名="XE_4502a9tl_1_1_1076176821"、パラメータ=""
ORA-27028: skgfqcre: sbtbackupからエラーが戻されました。
ORA-19511: RMAN以外の、メディア・マネージャまたはベンダー固有の障害。エラー・テキスト:
   CreateOraObject20:

RMAN>

駄目な模様。うーん???

NetBackup ver4.5/Oracle 8ぐらいの時のRMANスクリプト例

この時代はコントロールファイル/SPFILEの自動バックアップが無かった

Oracle 19の[バックアップおよびリカバリ・リファレンス]-[B 非推奨になったRMAN構文]を見ると、このスクリプトで使っている初期化は現状だと推奨されないようだ。

フルバックアップ

run{
  allocate channel ch00 type 'SBT_TAPE' maxopenfiles 100;
  allocate channel ch01 type 'SBT_TAPE' maxopenfiles 100;
  backup
    full
    skip inaccessible
     filesperset 64
    FORMAT 'bk_%s_%p_%t'
    database;
    sql 'alter system archive log current';
  release channel ch00;
  release channel ch01;

  allocate channel ch00 type 'SBT_TAPE' maxopenfiles 100;
  allocate channel ch01 type 'SBT_TAPE' maxopenfiles 100;
  sql 'alter system archive log current';
  backup
     filesperset 64
     FORMAT 'al_%s_%p_%t'
     archivelog all delete input;
  release channel ch00;
  release channel ch01;

  allocate channel ch00 type 'SBT_TAPE';
  copy current controlfile to '/出力フィル名';
  release channel ch00;
}

archivelogのみ

run{
  allocate channel ch00 type 'SBT_TAPE' maxopenfiles 100;
  allocate channel ch01 type 'SBT_TAPE' maxopenfiles 100;
  sql 'alter system archive log current';
  backup
     filesperset 64
     FORMAT 'al_%s_%p_%t'
     archivelog all delete input;
  release channel ch00;
  release channel ch01;

  allocate channel ch00 type 'SBT_TAPE';
  copy current controlfile to '/出力フィル名';
  release channel ch00;
}

Veeamのバックアップ

[Veeam plug-in for Oracle RMAN]-[Planning and Preparation]-[Oracle Environment Planning]

Commvault バックアップのLinuxクライアントをインストールする場合の設定


CommvaultバックアップのLinuxクライアントをインストールする際にうまく行かずに悩んだ点が発生したのでメモ書き。

Linux File System Agent: System Requirements」には下記のような記述があるが、実際にはRHEL/CentOS 7.1以外でも発生する問題である。

Net-tools Package
On Red Hat Enterprise Linux/CentOS 7.1 computers, make sure to install the net-tools package.

それどころか、RHEL8/CentOS8などでは、tarパッケージが最小インストールではインストールされなくなっているため、インストールに失敗する。(vSphere環境上にインストールする場合、open-vm-toolsの必須パッケージとしてtarがインストールされるため気がつきにくい)

今回、RHEL8.3, AlmaLinux 8.3, Rocky Linux 8.3, openEuler 21.03, CentOS 7, Ubuntu 18.04にインストールした結果、必要だったものは以下であった。

・必須のコマンド
tar, netstat, gzip コマンド
・上記が含まれるパッケージ(RHEL系の場合)
tar net-tools

また、firewalld/iptablesによる通信制限がかけられている場合、下記を実行してポートをあけた方が良い。

ただ、あけなくてもバックアップできる場合もある。

現状を確認「firewall-cmd –list-all」

[root@centos8 ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources:
  services: dhcpv6-client ssh
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

[root@centos8 ~]#

Commvault用にポート8400をあける設定

[root@centos8 ~]# firewall-cmd --permanent --zone=public --add-port=8400/tcp
success
[root@centos8 ~]#

設定の反映

[root@centos8 ~]# firewall-cmd --reload
success
[root@centos8 ~]#

反映されたことを確認

[root@centos8 ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources:
  services: dhcpv6-client ssh
  ports: 8400/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

[root@centos8 ~]#

また、rootユーザでのログインが禁止されている場合は、以下の4つの手段のどれかを使う

その1) 予め各Linuxサーバの/etc/sudoers ファイルにインストール用ユーザを設定してリモートインストールを行う「Adding sudo Users with Root Privileges on a UNIX Client

その2) 各LinuxサーバにLinuxクライアントパッケージを転送してrootユーザでインストールを行う「Installing Commvault Locally on UNIX, Linux, and Macintosh Computers Using the Installation Package

その3) 各LinuxサーバにLinuxクライアントパッケージを転送して一般ユーザ+sudoでインストールを行う「Installation of UNIX Agents by a Non-Root User

その4) 各Linuxサーバでrootログインを許可する

Commvaultの自働スケジュールの動きを確認した


CommVaultにはフルバックアップと増分バックアップをバックアップサーバ上で論理合成して新しいフルバックアップにする、という合成バックアップ(Synthetic Full)という仕組みがある。

V11SP16より前までは増分バックアップを実行した後に続けて合成処理を行う、というスケジュールを作成することができたが、2021年の現在ではそのようなスケジュールを作成することはできず、増分とは別に合成バックアップ用のスケジュールを作成する必要がある。(参考)

問題となるのは増分バックアップの終了時間にあわせて合成バックアップを実行する、ということが難しい、ということ。

単純に増分を毎日0:00開始、合成フルバックアップを日曜12:00開始、とかに設定した場合、増分バックアップに12時間以上かかり、日曜12時もバックアップ中であった場合、同名のスケジュールが動作しているので合成処理がスキップされてしまうことになる。

ドキュメントをみると「自働」スケジュールを設定することを推奨されており、「週1回合成フルを実行する」としたい場合は「自働 7日」というスケジュールを実行することで、7日に1回実行されることになるようだ。

7日で検証すると時間がかかりすぎるので「自働 2日」を設定して検証してみた。

開始終了
合成フル2021/3/24 18:522021/3/24 19:00自働2日というスケジュールを18時半過ぎに設定
増分2021/3/25 3:002021/3/25 3:01
増分2021/3/26 3:002021/3/26 3:01
合成フル2021/3/26 19:172021/3/26 19:24前回の実行終了から48時間+17分で実行された
増分2021/3/27 3:002021/3/27 3:02
増分2021/3/28 3:002021/3/28 3:01
合成フル2021/3/28 19:432021/3/28 19:49前回の実行終了から48時間+19分で実行された
増分2021/3/29 3:002021/3/29 3:02
増分2021/3/29 20:102021/3/29 20:11開始時刻を20:10変更
合成フル2021/3/30 20:082021/3/30 20:14前回の実行終了から48時間+19分で実行された
増分2021/3/30 20:132021/3/30 20:18開始時刻を20:10したが、合成フルが動作していたので遅延?

実行するたびに時間が後ろにずれていくのが気になる・・・

この17分~19分はどこから来ているのかな?とスケジュール設定画面を見直してみると、「ファイルまたはログのアクティビティ検出頻度 0時間15分」という変更ができない項目がある。

これは、15分間隔で自動バックアップを実行するべきか判断する、ということになるんだろうか?

だとすればこの動きも納得かな、と


2021/04/05追記

合成バックアップが実施される予定の時間帯にシステムが停止していた場合、どうなるかを確認したところ、システム起動後に合成バックアップが実行されました。

Commvault バックアップのWindowsクライアントをPUSHインストールする時のWindows Firewall 設定


Commvaultバックアップは、CommServeからPUSH操作によりWindowsクライアントへのCommvault エージェントのインストールを実施することができる。

その場合に必要なWindows Firewallの除外設定についてのメモ

「受信の規則」にある下記の3つの既存設定を「規則の有効化」する

・Windows Management Instrumentaion (DCOM受信)

・ Windows Management Instrumentaion (WMI受信)

・ファイルとプリンターの共有 (SMB 受信)

なお、ping応答もできるようにしたい場合は追加で「ファイルとプリンターの共有 (エコー要求 – ICMPv4 受信)」も有効化する(CommvaultのPUSHインストールにとっては不要)

インストールできるかの確認には、CommServeから「wmic /node:ホスト名 process get」と実行して対象ホストのプロセス一覧が取得出来れば、WMI動作としては問題ない感じです。

なお、CommVaultエージェントインストールにより、「CommVault_Process_1_????」といったルールが大量に登録される。

これは C:\Program Files\CommVault\Simpana\Base\AddFWExclusions.bat にて設定されたルールとなる。

— 2019/08/26追記 —

なんかこの設定だけだとうまくいかない

Visual C++ 2015-2019再頒布可能パッケージがインストールされていない場合に、リモートインストールが失敗することもある模様。