コンテンツにスキップ
13.8 バックアップ・リストア・マウント

13.8 バックアップ・リストア・マウント

バックアップは作成成功だけでなく、隔離環境でのマウント・リストアとサンプルクエリまで検証します。 パス、権限、保存領域、保持期間、暗号化、アクセス制御を併せて管理します。SQL とオプションの詳細は バックアップ・リストア・マウント構文を参照してください。

バックアップ方式の選択

目的方式
インスタンス全体の復旧基準点データベースのフルバックアップ
特定テーブルの移動・保持テーブルバックアップ
前回バックアップ以降の変更増分バックアップ
特定時間範囲のアーカイブ期間バックアップ
稼働中にバックアップを参照読み取り専用マウント
インスタンスデータの置き換えオフラインリストア

方式を選ぶ前に、現行リリースの Edition、テーブルタイプ、増分チェーン、マウント・リストアの サポート範囲を確認します。

フルバックアップ

フルバックアップは独立した復旧基準点として保持します。

  • バックアップパスにアクセスするのはサーバープロセスです。
  • 保存先ファイルシステムの空き容量とクォータを確認します。
  • 開始・終了時刻、エラー、出力サイズを記録します。
  • バックアップと元データの唯一のコピーを同じ障害ドメインに置かないでください。
  • 定期的に隔離サーバーへリストアし、主要テーブルを検証します。

テーブルバックアップ

対応テーブルタイプと、含まれるインデックス・メタデータの範囲を確認します。1つのテーブルを復旧する 場合は、新しいデータベースまたはマウントで検証し、明示的な INSERT・export/import 経路で 移す方法を優先します。既存の運用テーブルを直ちに置き換えないでください。

増分バックアップと AFTER

増分バックアップは前回バックアップ以降の変更を保存します。復旧に必要な基準バックアップと、 関連する増分バックアップを1つのチェーンとして管理します。

  • 各バックアップの基準と作成順序を記録します。
  • 中間ファイルが1つ欠けた場合の復旧可否を確認します。
  • 最後の増分だけを単独で保持しないでください。
  • チェーンが長くなったら新しいフルバックアップを作成します。
  • オフラインリストアでは最後の増分パスを machadmin -r に1回指定します。 フルバックアップから個別に繰り返し適用しません。必要なチェーン全体を保持し、 最終時点のデータが復元されることを確認します。

期間バックアップ

期間バックアップは BACKUP DATABASE FROM ... TO ... で開始・終了時刻を指定します。 通常クエリの WHERE 構文と混同しないでください。指定タイムゾーンと境界時刻のデータを含め、 バックアップの最小・最大時刻と行数を元データと比較します。

SQL BACKUP

BACKUP 実行アカウントには必要なデータベース・テーブル権限とサーバーパスへのアクセスが必要です。 運用自動化ではパスワードをコマンドラインに固定せず、終了コードとジョブ状態を併せて確認します。

実行前後の確認事項:

  1. 対象データベース・テーブルとバックアップ方式を確認。
  2. 保存先がまだ存在しない一意なパスであることを確認。
  3. 空き容量と想定増加量を確認。
  4. ジョブの完了とエラーを確認。
  5. 出力一覧、サイズ、チェックサムまたはストレージの整合性を検証。
  6. マウント・リストアによるサンプル検証。

オフラインリストア

machadmin -r によるオフラインリストアは、現在のインスタンスデータを置き換えます。 既存データベースがあると拒否されるため、現在のデータ保護と復旧対象の確認を済ませてから、 検証済み手順でサーバーを停止し、既存データベースを削除します。8.7.0 Standard Edition の 論理データベースのオンラインリストアは、別の SQL RESTORE DATABASE を使用します。 両方式の対象と前提条件を区別してください。

  • サービスとすべてのクライアント・Collector を停止する計画を立てます。
  • 現在データの別バックアップとロールバック経路を確保します。
  • 復元する正確なバックアップとチェーンを検証します。
  • リリース・Edition・設定の互換性を確認します。
  • 復旧担当者2名が対象インスタンスとパスを相互確認します。
  • 隔離環境の復旧訓練を通過した手順だけを本番に適用します。
  • 復元後、スキーマ、行数、時間範囲、アプリケーションクエリを検証します。

データベースのマウント

バックアップを読み取り専用データベースとして接続し、調査や選択的な復旧に使います。

MOUNT DATABASE '/absolute/backup/path' TO mount_name;
UMOUNT DATABASE mount_name;

アクティブな運用データベースと重ならないマウント名を使います。パスと権限はサーバープロセスを基準にします。

マウントされたデータベースのクエリ

SELECT *
FROM mount_name.SYS.table_name
WHERE _ARRIVAL_TIME >= TO_DATE('2026-01-01', 'YYYY-MM-DD');

まずテーブル一覧とスキーマを確認し、時間範囲、行数、サンプル値を検証します。必要なデータは、 現在のスキーマと重複ポリシーを確認してから選択的に移動します。

読み取り専用と使用中のマウント

マウントされたデータベースでは DDL・DML を実行しません。開いたカーソルや文があるとアンマウントが 拒否される場合があるため、すべての参照を閉じて再試行します。先にアクティブデータベースや他の マウントと名前が衝突していないか確認します。

非サポートの経路

内部構文が成功したように見えても、公開運用 API ではない MOUNT TABLEUMOUNT TABLE に 依存しないでください。公開された MOUNT DATABASEUMOUNT DATABASE を使用します。

テーブルタイプと Edition 別の範囲

LOG、TAG、TRANSACTION、LOOKUP、VOLATILE のバックアップ・マウント動作は同じではありません。 VOLATILE は再起動後にデータが残らないインメモリテーブルです。タイプ・Edition 別の範囲は バックアップ・マウントのサポートで確認します。

復旧検証チェックリスト

  • データベース・所有者・テーブルの数
  • 主要テーブルのスキーマとインデックス
  • 行数、最小・最大時刻
  • NULL・文字列・数値のサンプル
  • ユーザー・権限とアプリケーション接続
  • ROLLUP・保持ポリシー・ジョブ状態
  • バックアップ時点以降のデータ処理
  • ロールバック可否と実所要時間
最終更新日