Analysis Services データベースのバックアップと復元
適用対象: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
SQL Server Analysis Servicesには、特定の時点からデータベースとそのオブジェクトを復旧できるように、バックアップと復元が含まれています。 また、バックアップと復元は、アップグレードされたサーバーへのデータベースの移行、サーバー間でのデータベースの移動、実稼働サーバーへのデータベースの配置を行うための有効な方法でもあります。 バックアップ計画をまだ確立しておらず、重要なデータを保持している場合は、データ復旧のために、できるだけ早く計画を作成して実行してください。
バックアップと復元のコマンドは、配置済みの Analysis Services データベースで実行されます。 SQL Server Data Toolsのプロジェクトとソリューションでは、ソース管理を使用して、ソース ファイルの特定のバージョンを確実に回復し、使用しているソース管理システムのリポジトリのデータ復旧計画を作成する必要があります。
ソース データを含む完全バックアップでは、詳細データを含むデータベースをバックアップする必要があります。 具体的には、ROLAP または DirectQuery データベース ストレージを使用している場合、詳細データは Analysis Services データベースとは異なる外部の SQL Server リレーショナル データベースに格納されます。 すべてのオブジェクトがテーブルまたは多次元の場合は、Analysis Services バックアップにはメタデータとソース データの両方が含まれます。
バックアップを自動化する明らかな利点の 1 つは、自動バックアップ頻度の指定に応じて、データのスナップショットが常に最新の状態に保たれることです。 自動スケジューラにより、バックアップの実行漏れはなくなります。 データベースの復元も自動化が可能です。これはデータをレプリケートする場合に適していますが、レプリケート先のインスタンスの暗号化キー ファイルを必ずバックアップする必要があります。 同期機能は、SQL Server Analysis Services データベースのレプリケーション専用ですが、古いデータに対してのみ行われます。 ここで説明する機能はすべて、ユーザー インターフェイス、XML/A コマンド、または AMO 経由でのプログラムの実行によって実装できます。
前提条件
Analysis Services インスタンス上に管理権限を持っている、またはバックアップしようとしているデータベース上に、フル コントロール (管理者) 権限を持っている必要があります。
復元の場所は、バックアップが作成されたインスタンスと同じバージョン、またはそれよりも新しいバージョンの Analysis Services インスタンスである必要があります。 SQL Server 2017 インスタンスから以前のバージョンの Analysis Services にデータベースを復元することはできませんが、SQL Server 2012 などの古いバージョンのデータベースを新しいSQL Server 2017 インスタンスに復元するのが一般的です。
復元の場所は、同じサーバーの種類である必要があります。 テーブル データベースは、表形式モードで実行されている Analysis Services にしか復元できません。 多次元データベースには、多次元モードで実行されているインスタンスが必要です。
バックアップの準備
次のチェック リストに従って、バックアップの準備をします。
バックアップ ファイルを格納する場所を確認します。 リモートの場所を使用している場合は、UNC フォルダーとして指定する必要があります。 UNC パスにアクセスできることを確認します。
フォルダーの権限を調べて、Analysis Services のサービス アカウントにフォルダーの Read/Write 権限があることを確認してください。
ターゲット サーバー上に十分なディスク領域があることを確認してください。
同じ名前の既存のファイルを確認してください。 同じ名前のファイルが既に存在する場合、ファイルを上書きするオプションを指定しないと、バックアップは失敗します。
多次元データベースまたはテーブル データベースのバックアップ
管理者は、データベースのサイズに関係なく、SQL Server Analysis Services データベースを 1 つのSQL Server Analysis Services バックアップ ファイル (.abf) にバックアップできます。 詳細な手順については、「 Analysis Services データベースをバックアップする方法 (MyTechMantra.com)」 および「 Analysis Services データベースのバックアップの自動化 (MyTechMantra.com)」を参照してください。
注意
SharePoint 環境での Power Pivot データ モデルの読み込みとクエリに使用される Power Pivot for SharePoint は、SharePoint コンテンツ データベースからモデルを読み込みます。 これらのコンテンツ データベースはリレーショナルであり、SQL Serverリレーショナル データベース エンジンで実行されます。 そのため、Power Pivot データ モデルのSQL Server Analysis Servicesバックアップと復元の戦略はありません。 SharePoint コンテンツのディザスター リカバリー計画がある場合、そのプランにはコンテンツ データベースに格納されている Power Pivot データ モデルが含まれます。
リモート パーティション
SQL Server Analysis Services データベースにリモート パーティションが含まれている場合は、リモート パーティションもバックアップする必要があります。 リモート パーティションを含むデータベースをバックアップすると、各リモート サーバーのすべてのリモート パーティションが、各リモート サーバーにある 1 つのファイルにそれぞれバックアップされます。 このため、これらのリモート バックアップを各ホスト コンピューター以外の場所に作成する場合は、バックアップ ファイルを指定の記憶域に手動でコピーする必要があります。
バックアップ ファイルの内容
SQL Server Analysis Services データベースをバックアップすると、データベース オブジェクトによって使用されるストレージ モードによって内容が異なるバックアップ ファイルが生成されます。 バックアップ コンテンツのこの違いは、各ストレージ モードが実際にSQL Server Analysis Services データベース内に異なる情報セットを格納するという事実から生じます。 たとえば、多次元ハイブリッド OLAP (HOLAP) パーティションとディメンションは集計とメタデータをSQL Server Analysis Services データベースに格納しますが、リレーショナル OLAP (ROLAP) のパーティションとディメンションはSQL Server Analysis Services データベースにのみメタデータを格納します。 SQL Server Analysis Services データベースの実際の内容は各パーティションのストレージ モードによって異なるため、バックアップ ファイルの内容も異なります。 次の表では、バックアップ ファイルの内容と、オブジェクトによって使用されるストレージ モードを関連付けています。
ストレージ モード | バックアップ ファイルの内容 |
---|---|
多次元 MOLAP パーティションおよびディメンション | メタデータ、ソース データ、および集計 |
多次元 HOLAP パーティションおよびディメンション | メタデータおよび集計 |
多次元 ROLAP パーティションおよびディメンション | メタデータ |
テーブル インメモリ モデル | メタデータとソース データ |
テーブル DirectQuery モデル | メタデータのみ |
注意
SQL Server Analysis Services データベースをバックアップしても、リレーショナル データベースなどの基になるデータ ソース内のデータはバックアップされません。 SQL Server Analysis Services データベースの内容のみがバックアップされます。
SQL Server Analysis Services データベースをバックアップする場合は、次のオプションから選択できます。
データベースのバックアップをすべて圧縮するかどうか。 既定ではバックアップは圧縮されます。
バックアップ ファイルの内容を暗号化し、ファイルの復号化および復元の前にパスワードの入力を求めるかどうか。 既定ではバックアップ データは暗号化されません。
重要
バックアップ ファイルごとに、バックアップ コマンドを実行するユーザーは、各ファイルに指定されたバックアップ場所に対する書き込み権限を持っている必要があります。 また、ユーザーには、SQL Server Analysis Services インスタンスのサーバー ロールのメンバー、またはバックアップするデータベースに対するフル コントロール (管理者) アクセス許可を持つデータベース ロールのメンバーのいずれかのロールが必要です。
SQL Server Analysis Services データベースのバックアップの詳細については、「バックアップ オプション」を参照してください。
Analysis Services データベースの復元
管理者は、1 つ以上のバックアップ ファイルからSQL Server Analysis Services データベースを復元できます。
注意
バックアップ ファイルが暗号化されている場合は、そのファイルを使用してSQL Server Analysis Services データベースを復元する前に、バックアップ中に指定されたパスワードを指定する必要があります。
復元時には、次のオプションを選択できます。
データベースは元のデータベース名で復元することも、新しいデータベース名を指定することもできます。
既存のデータベースは上書きできます。 データベースを上書きする場合は、既存のデータベースを上書きすることを明示的に指定する必要があります。
既存のセキュリティ情報を復元するか、セキュリティ メンバーシップ情報を省略するかを選択できます。
復元コマンドを使用して、復元する各パーティションの復元先フォルダーを変更できます。 ローカル パーティションは、データベースを復元するSQL Server Analysis Services インスタンスに対してローカルな任意のフォルダーの場所に復元できます。 リモート パーティションは、ローカル サーバー以外のサーバーにある任意のフォルダーに復元できます。リモート パーティションをローカルにすることはできません。
重要
バックアップ ファイルごとに、復元コマンドを実行するユーザーは、各ファイルに指定されたバックアップ場所から読み取る権限を持っている必要があります。 サーバーにインストールされていないSQL Server Analysis Services データベースを復元するには、そのSQL Server Analysis Services インスタンスのサーバー ロールのメンバーである必要もあります。 SQL Server Analysis Services データベースを上書きするには、ユーザーは、SQL Server Analysis Services インスタンスのサーバー ロールのメンバー、または復元するデータベースに対するフル コントロール (管理者) 権限を持つデータベース ロールのメンバーのいずれかのロールを持っている必要があります。
注意
既存のデータベースを復元すると、データベースを復元したユーザーは、復元されたデータベースにアクセスできなくなる可能性があります。 バックアップの実行時に、ユーザーがサーバー ロールのメンバー、またはフル コントロール (管理者) 権限を持つデータベース ロールのメンバーではなかった場合、このようにアクセスできなくなることがあります。
SQL Server Analysis Services データベースの復元の詳細については、「復元オプション」を参照してください。