1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

OCI BaseDB の RMANバックアップ を Oracle Database Cloud Backup Module で ユーザー管理の Object Storage に取得する。(Oracle Cloud Infrastructure)

Posted at

表題通り OCI Base Database Service(BaseDB) のバックアップを Cloud Backup Module で ユーザー管理の Object Storage に取得してみますやで。
彡(゚)(゚)

1. 参考マニュアル

下記のマニュアルを参照して Backup Module をセットアップします。

RMANを使用したオブジェクト・ストレージへのデータベースのバックアップ
https://docs.public.oneportal.content.oci.oraclecloud.com/ja-jp/iaas/dbcs/doc/back-database-object-storage-using-rman.html

2. 実行環境

以下の環境で実行しています。これらは作成済みの前提とします。

・Oracle Base Database Service 19.19 ※Private Subnetに作成
・Object Storage のバケット
・必要な権限を付与された OCI IAMユーザー

VCN/Subnet/各種GWのネットワーク構成は下記記事を参照してください。

3. IAMユーザーの Auth Token発行

(左上)ハンバーガーメニュー → Identity & Security → Users → 該当のIAMユーザー → Auth Tokens → Generate Token で認証トークンを発行します。一度しか表示されないので忘れないようにコピペして下さい。
OCI_BKM001.png

4. Backup Module のインストール

下記コマンドで Backup Module をインストール&セットアップします。ネームスペース名は画面右上の人型アイコン→Tenancyから確認可能です。

cd /opt/oracle/oak/pkgrepos/oss/odbcs
java -jar opc_install.jar -opcId '<IAMユーザーのID>' -opcPass '<上記3.で発行した認証トークン>' -container <Object Storageのバケット名> -walletDir ~/hsbtwallet/ -libDir ~/lib/ -configfile ~/config -host https://swiftobjectstorage.<リージョン名>.oraclecloud.com/v1/<Object Storageのネームスペース名>

下記はインストール実行結果のサンプルとなります。一部をマスクしています。

sudo su - oracle
mkdir lib
cd /opt/oracle/oak/pkgrepos/oss/odbcs
java -jar opc_install.jar -opcId 'oracleidentitycloudservice/xxxxxxxx.xxxxxxxx@xxxxxx.xxxxxx' -opcPass 'xxxxxxxxxxxxxxx' -container ays-osk-objstr02 -walletDir ~/hsbtwallet/ -libDir ~/lib/ -configfile ~/config -host https://swiftobjectstorage.ap-osaka-1.oraclecloud.com/v1/xxxxxxxx

Oracle Database Cloud Backup Module Install Tool, build 12.2.0.1.0DBBKPCSBP_2018-06-12
Oracle Database Cloud Backup Module credentials are valid.
Backups would be sent to container ays-osk-objstr01.
Oracle Database Cloud Backup Module wallet created in directory /home/oracle/hsbtwallet.
Oracle Database Cloud Backup Module initialization file /home/oracle/config created.
Downloading Oracle Database Cloud Backup Module Software Library from file opc_linux64.zip.
Download complete.

5. RMAN構成(CONFIGURE)

インストールされた Backup Module を使用するようにRMAN構成を変更します。rman起動前のNLS_DATE_FORMATの設定は必須ではないですが推奨します。

export NLS_DATA_FORMAT='YYYY/MM/DD HH24:MI:SS';
rman nocatalog
CONNECT TARGET
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
CONFIGURE DEFAULT DEVICE TYPE TO SBT_TAPE;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE SBT_TAPE TO '%F';
CONFIGURE ENCRYPTION FOR DATABASE ON;

下記は実行サンプルです。

[oracle@aysoskdb19c ~]$ export NLS_DATA_FORMAT='YYYY/MM/DD HH24:MI:SS';
[oracle@aysoskdb19c ~]$ rman nocatalog

Recovery Manager: Release 19.0.0.0.0 - Production on Mon Jul 31 03:24:04 2023
Version 19.19.0.0.0

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

RMAN> CONNECT TARGET

connected to target database: AYSDB19C (DBID=3066954643)
using target database control file instead of recovery catalog

RMAN> CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';

new RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE DEFAULT DEVICE TYPE TO SBT_TAPE;

new RMAN configuration parameters:
CONFIGURE DEFAULT DEVICE TYPE TO 'SBT_TAPE';
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE BACKUP OPTIMIZATION ON;

new RMAN configuration parameters:
CONFIGURE BACKUP OPTIMIZATION ON;
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE SBT_TAPE TO '%F';

new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE 'SBT_TAPE' TO '%F';
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE ENCRYPTION FOR DATABASE ON;

new RMAN configuration parameters:
CONFIGURE ENCRYPTION FOR DATABASE ON;
new RMAN configuration parameters are successfully stored

6. RMANバックアップ実行

Object Storage にバックアップを取得してみます。下記はRMANコマンドのサンプルで、チャンネルを明示的に ALLOCATE しています。

RUN {
    ALLOCATE CHANNEL c1 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
    ALLOCATE CHANNEL c2 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
    ALLOCATE CHANNEL c3 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
    ALLOCATE CHANNEL c4 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
    BACKUP SECTION SIZE 512M INCREMENTAL LEVEL 0 AS COMPRESSED BACKUPSET DATABASE SPFILE PLUS ARCHIVELOG;
}

下記は実行結果の一部サンプルです。

RMAN> RUN {
2>     ALLOCATE CHANNEL c1 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
3>     ALLOCATE CHANNEL c2 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
4>     ALLOCATE CHANNEL c3 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
5>     ALLOCATE CHANNEL c4 DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config)';
6>     BACKUP SECTION SIZE 512M INCREMENTAL LEVEL 0 AS COMPRESSED BACKUPSET DATABASE SPFILE PLUS ARCHIVELOG;
7> }
allocated channel: c1
channel c1: SID=196 device type=SBT_TAPE
channel c1: Oracle Database Backup Service Library VER=19.0.0.1



Starting backup at 2023/07/31 05:26:04
current log archived
skipping archived logs of thread 1 from sequence 9 to 71; already backed up
channel c1: starting compressed archived log backup set
channel c1: specifying archived log(s) in backup set
input archived log thread=1 sequence=72 RECID=138 STAMP=1143609965
channel c1: starting piece 1 at 2023/07/31 05:26:05
channel c1: finished piece 1 at 2023/07/31 05:26:12
piece handle=3i22k6jd_114_1_1 tag=TAG20230731T052605 comment=API Version 2.0,MMS Version 19.0.0.1
channel c1: backup set complete, elapsed time: 00:00:07
Finished backup at 2023/07/31 05:26:12

Starting backup at 2023/07/31 05:26:12
skipping datafile 5; already backed up 2 time(s)
skipping datafile 6; already backed up 2 time(s)
skipping datafile 7; already backed up 2 time(s)
channel c1: starting compressed incremental level 0 datafile backup set
channel c1: specifying datafile(s) in backup set
input datafile file number=00012 name=+DATA/AYSDB19C_NCM_KIX/FE74D2FE740B6301E0537201000ABD9A/DATAFILE/users.274.1139890861



piece handle=5u22k6sa_190_1_1 tag=TAG20230731T052612 comment=API Version 2.0,MMS Version 19.0.0.1
channel c3: backup set complete, elapsed time: 00:00:12
Finished backup at 2023/07/31 05:31:02

Starting backup at 2023/07/31 05:31:02
current log archived
channel c1: starting compressed archived log backup set
channel c1: specifying archived log(s) in backup set
input archived log thread=1 sequence=73 RECID=140 STAMP=1143610262
channel c1: starting piece 1 at 2023/07/31 05:31:02
channel c1: finished piece 1 at 2023/07/31 05:31:03
piece handle=6322k6sm_195_1_1 tag=TAG20230731T053102 comment=API Version 2.0,MMS Version 19.0.0.1
channel c1: backup set complete, elapsed time: 00:00:01
Finished backup at 2023/07/31 05:31:03

Starting Control File and SPFILE Autobackup at 2023/07/31 05:31:03
piece handle=c-3066954643-20230731-07 comment=API Version 2.0,MMS Version 19.0.0.1
Finished Control File and SPFILE Autobackup at 2023/07/31 05:31:04
released channel: c1
released channel: c2
released channel: c3
released channel: c4

RMAN> 

LIST BACKUP で RMANバックアップ の取得状況を確認してみます。Object Storage にRMANバックアップを取得できている様子が確認できます。

RMAN> LIST BACKUP;


List of Backup Sets
===================


BS Key  Size       Device Type Elapsed Time Completion Time    
------- ---------- ----------- ------------ -------------------
49      4.50M      SBT_TAPE    00:00:03     2023/07/31 04:02:12
        BP Key: 57   Status: AVAILABLE  Compressed: YES  Tag: TAG20230731T040209
        Handle: 2b22k1m1_75_1_1   Media: swiftobjectstorage.ap-..oud.com/v1/nrp9esenpcgb/ays-osk-objstr01

  List of Archived Logs in backup set 49
  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time
  ---- ------- ---------- ------------------- ---------- ---------
  1    17      3666806    2023/07/31 04:00:21 3667208    2023/07/31 04:00:54
  1    18      3667208    2023/07/31 04:00:54 3667537    2023/07/31 04:02:09

  Backup Set Copy #1 of backup set 57
  Device Type Elapsed Time Completion Time     Compressed Tag
  ----------- ------------ ------------------- ---------- ---
  SBT_TAPE    00:00:25     2023/07/31 04:02:54 YES        TAG20230731T040238

    List of Backup Pieces for backup set 57 Copy #1
    BP Key  Pc# Status      Media                   Piece Name
    ------- --- ----------- ----------------------- ----------
    65      1   AVAILABLE   swiftobjectstorage.ap-..oud.com/v1/nrp9esenpcgb/ays-osk-objstr01 2e22k1mu_78_1_1
    69      2   AVAILABLE   swiftobjectstorage.ap-..oud.com/v1/nrp9esenpcgb/ays-osk-objstr01 2e22k1mu_78_2_1
    66      3   AVAILABLE   swiftobjectstorage.ap-..oud.com/v1/nrp9esenpcgb/ays-osk-objstr01 2e22k1mu_78_3_1

OCIコンソールで Object Storage に格納された RMANバックアップの取得状況を確認してみます。
OCI_BKM002.png

コンソール上でもRMANバックアップを取得できていることが確認できました。
彡(^)(^)

7. まとめ

Backup Module でユーザー管理の Object Storage に RMANバックアップを取得できました。

より高機能な ZRCV(Zero Data Loss Autonomous Recovery Service) もリリースされているんですが、
Backup Module でしか対応していない要件もあるので、適宜使い分けて下さいね。
彡(^)(^)

Zero Data Loss Autonomous Recovery Service
https://www.oracle.com/jp/database/zero-data-loss-autonomous-recovery-service/

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?