Autonomous Database では基本的に自動バックアップが取得されます。しかしクローン時の元となるデータベースを作成したい場合等、特定の状態のバックアップを手動で実行したい場合があります。本記事ではAutonomous Database で手動バックアップを作成する手順をまとめました。Autonomous Database に対する接続情報以外に以下の情報が必要です。
項目 | 必要な情報 |
---|---|
アクセス・トークン | ユーザー名とトークンの値 |
リージョン名 | リージョンID |
バケット | バケット名とネームスペース |
資格証明 | 資格証明の名前 |
トークンの作成
まずアクセストークンを作成します。Oracle Cloud のホーム画面、右上のプロファイルアイコンから「User Settings」をクリックします。画面上部に表示される「oracleidentitycloudservice」で始まるユーザー名を記録してください。次に左下のリンク「Auth Tokens」をクリックします。次に「Generate Token」ボタンをクリックします。
表示された画面ではトークンの名前(Description)に任意の文字列を入力して「Generate Token」ボタンをクリックします。「Copy」リンクをクリックしてクリップボード内に保存されたトークンを記録しておきます。
リージョン
接続リージョンのIDを取得します。Japan East (Tokyo) の場合は「ap-tokyo-1」です。
Oracle Cloud ホームページの上部「リージョン名」から「Manage Regions」をクリックすると、リージョンの一覧が表示されます。「Region Identifier:」部分に表示されますので記録しておきます。
バケット
手動バックアップはバケットに保存されます。このためバックアップ保存用バケットを作成しておきます。メニューから「Storage」⇒「Object Storage & Archive」⇒ 「Buckets」をクリックします。表示された画面から「Create Bucket」ボタンをクリックします。バックアップ用ストレージとして設定が必要な属性は特にありません。バケットの名前「Bucket Name」を記録し、「Create」ボタンをクリックします。
作成されたバケット名をクリックし、バケットの詳細を表示します。「Namespace」に表示される文字列を記録してください。
データベース設定
Autonomous Database に管理者権限で接続します。資格証明の作成とデータベース属性を変更します。
資格証明の作成
資格証明の作成には DBMS_CLOUD パッケージのCREATE_CREDENTIAL プロシージャを実行します。以下のパラメーターを指定します。usernameパラメーターには「oracleidentitycloudservice/ユーザー名」の形式で指定します。オンライン・マニュアルの例では、oracleidentitycloudservice 部分がありません。単純にユーザー名のみ指定した場合、手動バックアップの設定が完了していないとみなされました。
パラメーター名 | 設定値 | 備考 |
---|---|---|
credential_name | 資格証明の名前 | 任意の名前 |
username | Oracle Cloudユーザー名 | oracleidentitycloudservice/ユーザー名 |
password | アクセストークン |
SQL> BEGIN
2 DBMS_CLOUD.CREATE_CREDENTIAL(
3 credential_name => 'backup_credential1',
4 username => 'oracleidentitycloudservice/test@example.com',
5 password => 'A9aA9a;<]y+AAaaAAAA)'
6 );
7 END;
8 /
PL/SQLプロシージャが正常に完了しました。
次にデータベース属性を変更します。設定が必要なデータベース属性は以下の通りです。
属性名 | 説明 | 設定フォーマット |
---|---|---|
DEFAULT_BACKUP_BUCKET | バックアップ用バケット情報 | バケットのURI |
DEFAULT_CREDENTIAL | 接続クレデンシャル情報 | {スキーマ名}.{資格証明名} |
DEFAULT_BACKUP_BUCKET 属性はバケットを指す URI を指定します。以下のフォーマットです。
https://swiftobjectstorage.{リージョン名}.oraclecloud.com/v1/{ネームスペース名}/{バケット名}
それぞれの属性を変更します。
SQL> ALTER DATABASE PROPERTY SET default_backup_bucket='https://swiftobjectstorage.ap-tokyo-1.oraclecloud.com/v1/zzzzzzz9zzzz/bucket-20220412-1434';
データベースが変更されました。
SQL> ALTER DATABASE PROPERTY SET DEFAULT_CREDENTIAL = 'admin.backup_credential1';
データベースが変更されました。
処理が完了すると、Autonomous Database のホームページ下部の「Manual Backup Store」部分にバケット名が表示されます。「Not Configured」と表示される場合は設定が完了していません。
バックアップの実行
手動バックアップを実行するには、Autonomous Database のホーム画面、左下の「Backups」リンクをクリックし、表示された画面から「Create Manual Backup」ボタンをクリックします。バックアップの名前「Display Name」に任意の名前を入力します。理由はわかりませんが、バックアップ名前には記号がほぼすべて使用できません。漢字やひらがな等も使えないので、半角アルファベットの大文字/小文字と数字のみで入力します。
取得したバックアップはデータベースのリストアやクローンに使用できます。Autonomous Database の「More Actions」メニュー内の「Restore」や「Create Clone」の画面からバックアップの一覧に表示されます。
残念ながらこれらの設定は Always Free 環境では利用できません。