はじめに
Oracle CloudのOracle Databaseサービス(Base Database/Exadata Database Service[ExaDB-D])のバックアップをユーザ管理のObject Storageバケットにバックアップを取得するには、Oracle Database Cloud Backup Moduleをインストールする必要があります。インストール方法のマニュアルが新しく更新されたので、新しい方法でインストールしてみました。
RMANを使用したObject Storageへのデータベースのバックアップ
Back Up a Database to Object Storage Using RMANのマニュアル記載が更新されています。
ユーザ管理のObject Storageへのバックアップ
Base Databaseのバックアップをユーザ管理のObject Storageサービスにバックアップするステップ
- バックアップ用のObject Storageバケットを作成
- Oracle Database Cloud Backup Moduleをインストール
- RMANを構成
事前設定
- バックアップするDBシステムとデータベース
- 今回はOracle Linux8で動作しているDBシステム・バージョン:19.21.0.0.0を使用
- DBシステムのクラウド・ネットワーク(VCN)から、Object Storageへのアクセス権構成
- DBシステムと同じリージョンでのObject Storageアクセスの場合: Service Gatewayの使用を推奨
- DBシステムとは異なるリージョンのObject Storageアクセスの場合: Internet Gatewatを使用
- バックアップ保存先として使用する既存のObject Storageバケット
- OCIによって生成された認証トークン
- コンソールまたはIAM APIを使用して、認証トークンを生成
- ユーザー(Backup Moduleのインストール時および使用時に指定)には、Object Storageへのアクセス権
DB SystemへのBackup Moduleのインストール
- DBシステムにSSH接続(opcユーザ)
- oracleユーザにスイッチ
sudo su - oracle
- Backup Moduleファイル(opc_install.jar)が存在するディレクトリに移動
cd /opt/oracle/oak/pkgrepos/oss/odbcs
- 以下のコマンドで Backup Module をインストール
java -jar opc_install.jar -opcId <user_id> -opcPass '<auth_token>' -container <bucket_name>;-walletDir ~/hsbtwallet/ -libDir ~/lib/ -configfile ~/config -host https://swiftobjectstorage.<region_name>.oraclecloud.com/v1/<object_storage_namespace>
各パラメータの意味
パラメータ | 意味 |
---|---|
-opcId | OCIユーザー・アカウントのユーザー名。コンソールへのサインインに使用するユーザー名です。例: -opcId username@example.com |
-opcPass | コンソールまたはIAM APIを使用して生成される認証トークン(一重引用符で囲みます)。これは、Oracle Cloud Infrastructureユーザーのパスワードではありません。 |
-container | バックアップ保存先として使用するObject Storageの既存のバケットの名前。例: -container DBBackups |
-walletDir | Oracle Walletが作成されるディレクトリ。Backup Moduleのインストールツールによって作成されます。 |
-libDir | SBTライブラリが格納されるディレクトリ。コマンドを実行する前に、ディレクトリがすでに存在している必要があります。最新のSBTライブラリ(libopc.soファイル)がダウンロードされます。 |
-configfile | インストール・ツールによって作成される初期化パラメータ・ファイルの名前。 |
-host | バックアップを送信するエンドポイントURL:https://swiftobjectstorage.region_name.oraclecloud.com/v1/object_storage_namespace object_storage_namespace:テナンシのObject Storageネームスペース(後にスラッシュを追加しない) region_name:リージョン名 |
実行例
$ sudo su - oracle
$ mkdir $HOME/hsbtwallet
$ mkdir $HOME/lib
$ mkdir $HOME/config
$ cd /opt/oracle/oak/pkgrepos/oss/odbcs
$ java -jar opc_install.jar -opcId 'username@example.com' -opcPass 'Password' -container dbbackup -walletDir ~/hsbtwallet/ -libDir ~/lib/ -configfile ~/config/backupconfig -host https://swiftobjectstorage.ap-tokyo-1.oraclecloud.com/v1/namespace
Oracle Database Cloud Backup Module Install Tool, build 23.3.0.0.0_2023-08-25
Backups would be sent to container dbbackup2.
Oracle Database Cloud Backup Module wallet created in directory /home/oracle/hsbtwallet.
Oracle Database Cloud Backup Module initialization file /home/oracle/config/backupconfig created.
Downloading Oracle Database Cloud Backup Module Software Library from Oracle Cloud Infrastructure.
Download complete.
$
RMANの構成
DBシステムにopcユーザでログインし、oracleユーザにスイッチし、RMANを使用してデータベースに接続
$ rman target /
SBTデバイスを使用し、バックアップ・モジュールのインストール時に作成された構成ファイルを指すようにRMANを構成します。
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/home/oracle/lib/libopc.so, SBT_PARMS=(OPC_PFILE=/home/oracle/config/backupconfig)';
デフォルトでSBT_TAPEを使用するようにRMANを構成します。
次のサンプルでは、SBT_TAPEへの制御ファイルおよびspfileの自動バックアップを有効にし、暗号化を構成します。圧縮、使用するバックアップおよびリカバリ・チャネルの数、バックアップ保存ポリシー、アーカイブ・ログ削除ポリシーなど、インストールに適用されるその他の設定があります。
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;
データベースのバックアップ
RMANの構成が完了したら、テープ・バックアップに定期的に使用するものと同じRMANコマンドを使用できます。
データベース暗号化を設定します。
この設定は永続的ではありません。新しいRMANセッションごとに設定する必要があります。
SET ENCRYPTION IDENTIFIED BY "password" ONLY;
データベースおよびアーカイブ・ログをバックアップの例
BACKUP INCREMENTAL LEVEL 0 SECTION SIZE 512M DATABASE PLUS ARCHIVELOG;
BACKUP INCREMENTAL LEVEL 1 SECTION SIZE 512M DATABASE PLUS ARCHIVELOG;
BACKUP INCREMENTAL LEVEL 1 CUMULATIVE SECTION SIZE 512M DATABASE PLUS ARCHIVELOG;
バックアップ・ジョブが完了したら、「ストレージ」ページのコンソールで「オブジェクト・ストレージ」を選択して、バケット内のバックアップ・ファイルを表示できます。
おわりに
Base DatabaseのDBシステムにBackup Moduleがあらかじめ用意されるようになり、インストール手順が簡単になりました。
補足
これまでのダウンロードサイトも引き続き存在しています。
ダウンロードしたBackup Moduleのインストールには、Java SE8 が必要でした。