すべてのプロダクト
Search
ドキュメントセンター

:Oracleデータベースの物理バックアップの準備

最終更新日:Oct 17, 2024

このトピックでは、Oracleデータベースをバックアップする前に行う必要のある準備について説明します。 Oracleデータベースのアーカイブモードを有効にし、OracleデータベースのシステムID (SID) を取得し、Oracleデータベースがインストールされているディレクトリを取得する必要があります。

前提条件

あなたはデータベース管理者 (DBA) です。

アーカイブモードを有効にする

DBSは、Recovery Manager (RMAN) ツールを使用してOracleデータベースのデータをバックアップします。 デフォルトでは、Oracleデータベースのアーカイブモードは無効になっています。 データベースのデータをバックアップする前に、アーカイブモードを手動で有効にする必要があります。

  1. as sysdbaコマンドを実行して、システム管理者としてOracleデータベースにログインします。

  2. ARCHIVE LOG LISTステートメントを実行して、データベースのアーカイブモードのステータスを照会します。 次の出力が返されます。

    Database log mode              No Archive Mode  # The archive mode is disabled.
    Automatic archival             Disabled
    Archive destination            USE_DB_RECOVERY_FILE_DEST  
    Oldest online log sequence     1    
    Current log sequence           2  
    説明

    データベースログモードパラメーターの値としてアーカイブモードが返された場合、アーカイブモードが有効になります。 この場合、再度アーカイブモードを有効にする必要はありません。

  3. アーカイブモードが無効になっている場合は、SHUTDOWN IMMEDIATEステートメントを実行してOracleデータベースをシャットダウンします。 OracleデータベースがOPEN状態の場合、Oracleデータベースのアーカイブモードを有効にすることはできません。

    警告

    この手順は、オフピーク時に実行することを推奨します。

  4. STARTUP MOUNTステートメントを実行します。 ステートメントが実行されると、データベースはMOUNT状態になります。

  5. ALTER DATABASE ARCHIVELOGステートメントを実行して、アーカイブモードを有効にします。

  6. ARCHIVE LOG LISTステートメントを再度実行して、アーカイブモードのステータスを照会します。 次の出力が返されます。

    Databaselog mode             Archive Mode # The archive mode is enabled.
    Automatic archival           Enabled 
    Archive destination          USE_DB_RECOVERY_FILE_DEST 
    Oldest online log sequence 1
    Next log sequence to archive 2
    Currentlog sequence        2
    説明

    Oracleデータベースのログ・ファイルをアーカイブするためのデフォルト・パスは $ORACLE_BASE/fast_recovery_areaです。 デフォルトでは、このディレクトリには4 GBのスペースしか含まれません。 このディレクトリは、フラッシュバック操作のバックアップファイルとログファイルを保存するための既定のパスでもあります。 ディレクトリの空き容量が不足すると, データベースサービスが中断されます。 ファイル用に十分な容量を確保するために、ディレクトリのサイズをより大きな値に変更するか、ビジネス要件に基づいてログファイルをアーカイブするためのパスを変更できます。

  7. ALTER DATABASE OPENステートメントを実行して、Oracleデータベースを開始します。

OracleデータベースのSIDの取得

  • Linux

    次のコマンドを実行して、システムプロセス情報から実行中のOracleデータベースのSIDを取得します。

    ps -ef | grep ora_pmon_ | grep -v grep | awk -F "ora_pmon_" '{print "oracle sid: "$NF }' | grep -v print

    次の出力は、Oracle SIDがorclであることを示します。

    oracle sid: orcl
  • Windows

    Windows CLIで次のコマンドを実行して、OracleデータベースのSIDとサービス名を取得します。

    sc query type=service | findstr SERVICE_NAME | findstr OracleService

    次の出力は、OracleインスタンスのSIDがorclで、サービス名がOracleServiceORCLであることを示しています。

    SERVICE_NAME: OracleServiceORCL

Oracleデータベースがインストールされているディレクトリの取得

ORACLE_HOMEは、Oracleデータベースがインストールされているディレクトリを指定します。

  1. CLIでsu - oracleコマンドを実行して、Oracleデータベースにログインします。

  2. ORACLEデータベースでecho Oracle_HOMEステートメントを実行し、ORACLE_HOMEの値を取得します。

    次の出力は、ORACLE_HOMEの値が /opt/oracle/product/19c/dbhome_1であることを示します。

    /opt/oracle/product/19c/dbhome_1

Oracle RACデータベース内のファイルの照会

Real Application Clusters (RAC) アーキテクチャのOracleデータベース内のデータをバックアップできるようにするには、データをバックアップする前に、データベースの制御ファイル、サーバーパラメーターファイル、データファイル、アーカイブされたログファイル、およびredoログファイルを確認する必要があります。 OracleデータベースがRACアーキテクチャでない場合、次の操作は必要ありません。 例:

  • redoログファイルの照会

    SELECT member FROM v$logfile WHERE type='ONLINE';

    次の図は、サンプル出力を示しています。各MEMBERエントリはプラス記号 (+) で始まる。 DBSBAKDAT1DGは、RACデータベースのファイルを格納するために使用される自動ストレージ管理 (ASM) ベースのデータベースの名前を示します。

  • アーカイブされたログファイルの照会

    SELECT name FROM v$archived_log WHERE DELETED='NO';

    次の図は、サンプル出力を示しています。各NAMEエントリはプラス記号 (+) で始まる。 DBSBAKDAT1DGは、RACデータベースのファイルを格納するために使用されるASMベースのデータベースの名前を示します。

  • クエリデータファイル

    SELECT name FROM v$datafile;

    次の図は、サンプル出力を示しています。各VALUEエントリはプラス記号 (+) で始まります。 DBSBAKDAT1DGは、RACデータベースのファイルを格納するために使用されるASMベースのデータベースの名前を示します。

  • クエリサーバーパラメータファイル

    SHOW parameter spfile;

    次の図は、サンプル出力を示しています。各VALUEエントリはプラス記号 (+) で始まります。 DBSBAKDAT1DGは、RACデータベースのファイルを格納するために使用されるASMベースのデータベースの名前を示します。

  • クエリ制御ファイル

    SHOW parameter control_files;

    次の図は、サンプル出力を示しています。各VALUEエントリはプラス記号 (+) で始まります。 DBSBAKDAT1DGは、RACデータベースのファイルを格納するために使用されるASMベースのデータベースの名前を示します。

次に何をすべきか

Oracleデータベースのバックアップ