Reporting Services のインストールの移行 (ネイティブ モード)

ここでは、Reporting Services のネイティブ モード配置でサポートされている次のいずれかのバージョンを新しい SQL Server Reporting Services インスタンスに移行する手順について説明します。

  • SQL Server 2016 (13.x)

  • SQL Server 2014 (12.x)

  • SQL Server 2012 (11.x)

  • SQL Server 2008 R2 (10.50.x)

  • SQL Server 2008 (10.0.x)

  • SQL Server 2014 (12.x)

  • SQL Server 2012 (11.x)

  • SQL Server 2008 R2 (10.50.x)

  • SQL Server 2008 (10.0.x)

Reporting Services SharePoint モード配置を移行する方法については、「Reporting Services の移行 (SharePoint モード)」をご覧ください。

移行とは、新しい SQL Server インスタンスにアプリケーション データ ファイルを移動することを指します。 以下は、インストールを移行する必要がある一般的な理由です。

  • 大規模な配置や稼働時間の要件がある。

  • インストールのハードウェアやトポロジを変更している。

  • アップグレードを妨げる問題が発生している。

ネイティブ モードの移行の概要

Reporting Services の移行プロセスには、手動の手順と自動化された手順が含まれます。 レポート サーバーの移行の一環として、次の作業を実行します。

  • データベース、アプリケーション、および構成ファイルをバックアップします。

  • 暗号化キーをバックアップします。

  • SQL Server の新しいインスタンスをインストールします。 同じハードウェアを使用する場合、SQL Server は、インストールされているバージョン (サポートされているバージョンのいずれかの場合) とサイド バイ サイドでインストールできます。

    ヒント

    サイド バイ サイド インストールを実行するには、SQL Server を名前付きインスタンスとしてインストールする必要があります。

  • レポート サーバー データベースおよびその他のアプリケーション ファイルを、既にインストールされている SQL Server から、新しくインストールした SQL Server に移動します。

  • 任意のカスタム アプリケーション ファイルを新しいインストールに移動します。

  • レポート サーバーを構成します。

  • RSReportServer.config を編集して、以前のインストールからすべてのカスタム設定を含めます。

  • 必要に応じて、新しい Reporting Services Windows サービス グループについて、カスタムのアクセス制御リスト (ACL) を構成します。

  • 新しいインスタンスが完全に動作することを確認してから、使用しないアプリケーションおよびツールを削除します。

レポート サーバー データベースをホストする SQL Server のエディションによっては制限があります。 以前のインストールで作成したレポート サーバー データベースを再利用する場合は、次のトピックを確認してください。

固定されたデータベース名

レポート サーバー データベースの名前は変更できません。 データベースの ID は、データベース作成時にレポート サーバーのストアド プロシージャで記録されます。 レポート サーバーのプライマリ データベースまたは一時データベースの名前を変更すると、プロシージャ実行時にエラーが発生し、レポート サーバー インストールが無効になります。

既存のインストールのデータベース名が新しいインストールに適さない場合は、適切な名前で新しいデータベースを作成し、以下の方法で既存のアプリケーション データを読み込むことを検討してください。

  • レポート サーバー Web サービスの SOAP メソッドを呼び出してデータベース間でデータをコピーする Visual Basic スクリプトを作成します。 スクリプトの実行には RS.exe ユーティリティを使用できます。 この方法の詳細については、「 Reporting Services を使ったスクリプトの作成と PowerShell」を参照してください。

  • WMI プロバイダーを呼び出してデータベース間でデータをコピーするコードを記述します。 このアプローチの詳細については、「 Reporting Service WMI プロバイダーへのアクセス」を参照してください。

  • アイテム数が少ない場合は、レポート デザイナー、モデル デザイナー、およびレポート ビルダーから新しいレポート サーバーに、レポートおよび共有データ ソースを再パブリッシュできます。 ロールの割り当て、サブスクリプション、共有スケジュール、レポート スナップショット スケジュール、レポートやその他のアイテムに設定したカスタム プロパティ、モデル アイテム セキュリティ、およびレポート サーバーで設定したプロパティを再作成します。 これらのアクションを行う場合は、レポート履歴やレポートの実行ログ データの損失に備えてください。

開始前の準備

アップグレードではなく移行を行う場合でも、既存のインストールでアップグレード アドバイザーの実行を検討してください。移行に影響する問題を識別できる場合があります。 この手順は、インストールまたは構成していないレポート サーバーを移行する場合に特に役立ちます。 アップグレード アドバイザーを実行すると、新しくインストールする SQL Server でサポートされない可能性があるカスタム設定を確認できます。

また、インストールの移行方法に影響する SQL Server Reporting Services での以下の重要な変更点に注意してください。

  • 新しい Web ポータルでレポート マネージャーは置き換えられました。

  • SQL Server 2008 (10.0.x) 以降、IIS は必須ではなくなりました。 インストールされているレポート サーバーを新しいコンピューターに移行する場合、Web サーバーの役割を追加する必要はありません。 また、URL および認証を構成する手順が以前のリリースとは異なり、問題の診断およびトラブルシューティングの手法やツールも変更になっています。

  • レポート サーバー Web サービス、Web ポータル、およびレポート サーバー Windows サービスは、同じアカウントで実行されます。 3 つのアプリケーションはいずれも RSReportServer.config ファイルから構成設定を読み取ります。

  • Web ポータルおよび SQL Server Management Studio の設計が変更され、重複する機能が削除されました。 各ツールは、それぞれ別のタスクをサポートします。

  • ISAPI フィルターは、SQL Server 2008 (10.0.x) Reporting Services 以降のバージョンではサポートされていません。 ISAPI フィルターを使用する場合、移行を実行する前にレポート ソリューションを設計し直す必要があります。

  • IP アドレス制限は、SQL Server 2008 (10.0.x) Reporting Services 以降のバージョンではサポートされていません。 IP アドレス制限を使用する場合、移行を実行する前にレポート ソリューションを設計し直すか、ファイアウォール、ルーター、ネットワーク アドレス変換 (NAT) などのテクノロジを使用して、レポート サーバーへのアクセスが制限されるアドレスを構成する必要があります。

  • クライアントのトランスポート層セキュリティ (TLS) (旧称 Secure Sockets Layer (SSL)) 証明書は、SQL Server 2008 (10.0.x) Reporting Services 以降のバージョンではサポートされません。 クライアント TLS 証明書を使用する場合、移行を実行する前にレポート ソリューションを設計し直す必要があります。

  • Windows 統合認証以外の認証の種類を使用する場合、サポートされている認証の種類で RSReportServer.config ファイルの<AuthenticationTypes> 要素を更新する必要があります。 サポートされている認証の種類は、NTLM、Kerberos、Negotiate、および Basic です。 匿名認証、.NET パスポート認証、およびダイジェスト認証は、SQL Server 2008 (10.0.x) Reporting Services 以降のバージョンではサポートされません。

  • カスタムのカスケード スタイル シートをレポート環境で使用している場合、そのスタイル シートは移行できません。 移行後に手動で移動します。

SQL Server Reporting Services の変更点の詳細については、アップグレード アドバイザーのマニュアルおよび「Reporting Services の新機能」をご覧ください。

ファイルおよびデータのバックアップ

Reporting Services の新しいインスタンスをインストールする前に、現在インストールされているすべてのファイルを必ずバックアップしてください。

  1. レポート サーバー データベースの暗号化キーをバックアップします。 これは、移行を正しく行うための重要な手順です。 移行プロセスの後の方で、暗号化されたデータへのレポート サーバーからのアクセスを復旧するために、このキーを復元する必要があります。 キーをバックアップするには、レポート サーバー構成マネージャーを使用してください。

  2. サポートされている任意の SQL Server データベースのバックアップ方法で、レポート サーバー データベースをバックアップします。 詳細については、「別のコンピューターへのレポート サーバー データベースの移動 (SSRS ネイティブ モード)」にあるレポート サーバー データベースのバックアップ方法に関する指示をご覧ください。

  3. レポート サーバーの構成ファイルをバックアップします。 バックアップするのは次のファイルです。

    1. RSReportServer.config

    2. Rswebapplication.config

    3. Rssrvpolicy.config

    4. Rsmgrpolicy.config

    5. Reportingservicesservice.exe.config

    6. レポート サーバーの ASP.NET アプリケーション用の Web.config

    7. レポート サーバー操作用に変更している場合の ASP.NET 用の Machine.config

SQL Server Reporting Services のインストール

新しいレポート サーバー インスタンスを、既定値以外の値で構成できるように、ファイルのみのモードでインストールします。 コマンド ラインからインストールする場合は、FilesOnly 引数を使用します。 インストール ウィザードでは、 [サーバーを構成せずにインストールする] を選択します。

Reporting Services の新しいインスタンスのインストール手順については、次のいずれかのリンクをクリックして参照してください。

レポート サーバー データベースの移動

レポート サーバー データベースには、パブリッシュされたレポート、モデル、共有データ ソース、スケジュール、リソース、サブスクリプション、およびフォルダーが格納されます。 また、システム プロパティとアイテム プロパティ、およびレポート サーバー コンテンツにアクセスするための権限も格納されています。

移行に伴い、使用するデータベース エンジン インスタンスの変更も行う場合は、レポート サーバー データベースを新しいデータベース エンジン インスタンスに移動する必要があります。 同じデータベース エンジン インスタンスを使っている場合は、「カスタム アセンブリや拡張機能の移動」セクションに進んでください。

レポート サーバー データベースを移動するには、次の手順を行います。

  1. 使用するデータベース エンジン インスタンスを選択します。 SQL Server Reporting Services レポート サーバー データベースをホストするために次のいずれかのバージョンを使用する必要があります。

    • SQL Server 2016 (13.x)

    • SQL Server 2014 (12.x)

    • SQL Server 2012 (11.x)

    • SQL Server 2008 R2 (10.50.x)

    • SQL Server 2008 (10.0.x)

    • SQL Server 2014 (12.x)

    • SQL Server 2012 (11.x)

    • SQL Server 2008 R2 (10.50.x)

    • SQL Server 2008 (10.0.x)

  2. SQL Server Management Studio を開始し、データベース エンジンに接続します。

  3. そのデータベース エンジンでレポート サーバー データベースをホストしたことがない場合は、システム データベースで RSExecRole を作成します。 詳細については、「 RSExecRole の作成」をご覧ください。

  4. 別のコンピューターへのレポート サーバー データベースの移動 (SSRS ネイティブ モード)」の指示に従います。

レポート サーバー データベースと一時データベースは相互に依存するため、一緒に移動する必要があることに注意してください。 データベースをコピーしても新しいインストールにセキュリティ設定がすべて移行されるわけではないため、コピーは使用しないでください。 スケジュールされたレポート サーバー操作の SQL Server エージェント ジョブは移動しないでください。 これらのジョブは、レポート サーバーで自動的に再作成されます。

カスタム アセンブリや拡張機能の移動

インストールにカスタム レポート アイテム、アセンブリ、または拡張機能が含まれている場合、それらのカスタム コンポーネントを再配置する必要があります。 カスタム コンポーネントを使用していない場合は、「 レポート サーバーの構成」に進んでください。

カスタム コンポーネントを再配置するには、次の手順を行います。

  1. アセンブリがサポートされているか、または再コンパイルが必要かを確認します。

    • カスタム セキュリティ拡張機能は、IAuthenticationExtension2 インターフェイスを使用して記述し直す必要があります。

    • SQL Server 2008 (10.0.x) Reporting Services のカスタム表示拡張機能は、表示オブジェクト モデル (ROM) を使用して記述し直す必要があります。

    • HTML 3.2 と HTML OWC レンダラーでは、SQL Server 2008 (10.0.x) Reporting Services 以降のバージョンではサポートされていません。

    • それ以外のカスタム アセンブリを再コンパイルする必要はありません。

  2. アセンブリを新しいレポート サーバーの \bin フォルダーに移動します。 SQL Server では、既定のレポート サーバー インスタンスにおけるレポート サーバーのバイナリは次の場所にあります。

    \Program files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer\bin

  3. 構成ファイルを変更してカスタム コンポーネントのエントリを追加します。 エントリは、使用するアセンブリの種類によって異なります。 ファイルの配置場所および構成エントリの追加位置については、以下を参照してください。

    1. カスタム アセンブリの配置

    2. 方法: カスタム レポート アイテムを配置する

    3. データ処理拡張機能の配置

    4. 配信拡張機能の配置

    5. 表示拡張機能の配置

    6. セキュリティ拡張機能の実装

レポート サーバーを構成する

レポート サーバー Web サービスと Web ポータルの URL を構成し、レポート サーバー データベースへの接続を構成します。

スケールアウト配置を移行する場合、すべてのレポート サーバー ノードをオフラインにし、一度に 1 つずつサーバーを移行します。 最初のレポート サーバーを移行し、レポート サーバー データベースに正常に接続すると、レポート サーバー データベースのバージョンは自動的に SQL Server データベースのバージョンにアップグレードされます。

重要

スケールアウト配置内にオンラインで、移行されていないレポート サーバーがある場合、アップグレードされたデータベースへの接続時に古いスキーマが使用されるため、rsInvalidReportServerDatabase 例外が発生する場合があります。

移行したレポート サーバーがスケールアウト配置用の共有データベースとして構成されていた場合、ReportServer データベースの Keys テーブルから古い暗号化キーをすべて削除した後で、レポート サーバー サービスを構成する必要があります。 このキーが削除されていない場合、移行したレポート サーバーでは、スケールアウト配置モードで初期化が試行されます。 詳細については、スケールアウト配置に関する暗号化キーの追加と削除 (レポート サーバー構成マネージャー) に関する記事、および「暗号化キーの構成と管理 (レポート サーバー構成マネージャー)」をご覧ください。

このスケールアウト キーは、Reporting Services Configuration Manager では削除できません。 SQL Server Management Studio を使用して、 ReportServer データベースの Keys テーブルから古いキーを削除する必要があります。 Keys テーブル内のすべての行を削除します。 このアクションによってテーブルがクリアされ、以降の手順に示すように、対称キーのみを復元できるように準備されます。

キーを削除する前に、対称暗号化キーをバックアップしておくことをお勧めします。 Reporting Services Configuration Manager を使用してキーをバックアップできます。 Configuration Manager を開き、[暗号化キー] タブをクリックし、 [バックアップ] ボタンをクリックします。 スクリプト WMI コマンドを使用して暗号化キーをバックアップすることもできます。 WMI の詳細については、「BackupEncryptionKey メソッド (WMI MSReportServer_ConfigurationSetting)」をご覧ください。

  1. レポート サーバーの Configuration Manager を起動し、インストールした Reporting Services インスタンスに接続します。 詳細については、「レポート サーバーの構成マネージャー (ネイティブ モード)」を参照してください。

  2. レポート サーバーと Web ポータルの URL を構成します。 詳細については、「URL の構成 (レポート サーバー構成マネージャー)」を参照してください。

  3. 以前のインストールから既存のレポート サーバー データベースを選択して、レポート サーバー データベースを構成します。 正常に構成された後、レポート サーバー サービスが再開されます。また、レポート サーバー データベースへの接続が確立されると、データベースが自動的に SQL Server Reporting Services にアップグレードされます。 データベースの変更ウィザードを使用してレポート サーバー データベースを作成または選択する方法の詳細については、「ネイティブ モード レポート サーバー データベースの作成」をご覧ください。

  4. 暗号化キーを復元します。 この手順は、レポート サーバー データベースの既存の接続文字列および資格情報の暗号化を解除できるようにするために実行する必要があります。 詳細については、「 Back Up and Restore Reporting Services Encryption Keys」を参照してください。

  5. レポート サーバーを新しいコンピューターにインストールし、Windows ファイアウォールを使用している場合は、レポート サーバーがリッスンする TCP ポートが開いていることを確認します。 既定のポート番号は 80 です。 詳細については、「 レポート サーバー アクセスに対するファイアウォールの構成」をご覧ください。

  6. ネイティブ モードのレポート サーバーをローカルで管理する場合は、Web ポータルによるローカル管理を許可するようにオペレーティング システムを構成する必要があります。 詳細については、「ローカル管理用のネイティブ モードのレポート サーバーの構成」を参照してください。

RSReportServer.config ファイルへのカスタム構成設定のコピー

以前のインストールで RSReportServer.config ファイルまたは RSWebApplication.config ファイルを変更していた場合、新しい RSReportServer.config ファイルで同じ変更を行います。 以前の構成ファイルで変更された可能性があるいくつかの項目と、SQL Server 2016 で同じ設定を構成するための方法に関する追加情報へのリンクを次に示します。

カスタマイズ Information
カスタム設定を使用したレポート サーバーの電子メール配信 電子メールの設定 * Reporting Services のネイティブ モード
デバイス情報設定 RSReportServer.Config で表示拡張機能パラメーターをカスタマイズする

Windows サービス グループとセキュリティ ACL

SQL Server 2016 (13.x) Reporting Services 以降 (SSRS) には、Reporting Services Windows サービス グループという 1 つのサービス グループがあります。このサービス グループは、SQL Server Reporting Services と共にインストールされたすべてのレジストリ キー、ファイル、およびフォルダーのセキュリティ ACL を作成するために使用されます。 この Windows グループ名は SQLServerReportServerUser$<computer_name>$<instance_name> という形式で表示されます。

配置の確認

  1. ブラウザーを開き、URL アドレスを入力して、レポート サーバーおよび Web ポータルの仮想ディレクトリをテストします。 詳細については、「 Reporting Services のインストール状態の検証」をご覧ください。

  2. レポートをテストし、レポートに意図したデータが含まれることを確認します。 データ ソース情報で、データ ソース接続情報が指定されたままになっているかどうかを確認します。 レポート サーバーでは、レポートを処理および表示する際にレポート オブジェクト モデルが使用されますが、SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x)、SQL Server 2012 (11.x)、または SQL Server 2014 (12.x) のコンストラクトは新しいレポート定義言語要素には置き換えられません。 新しいバージョンのレポート サーバーで既存のレポートが実行される方法の詳細については、「レポートのアップグレード」をご覧ください。

使用しないプログラムおよびファイルの削除

レポート サーバーを新しいインスタンスに正常に移行したら、次の手順に従って、不要になったプログラムとファイルを削除できます。

  1. 以前のバージョンの Reporting Services が不要になった場合はアンインストールします。 この手順を実行しても、次の項目は削除されません。ただし、これらの項目が不要な場合は、手動で削除できます。

    • 古いレポート サーバー データベース

    • RsExec ロール

    • レポート サーバーのサービス アカウント

    • レポート サーバー Web サービスに使用するアプリケーション プール

    • レポート マネージャーおよびレポート サーバー用の仮想ディレクトリ

    • レポート サーバーのログ ファイル

  2. このコンピューター上で IIS が不要になった場合は削除します。

次のステップ

その他の質問 Reporting Services のフォーラムに質問してみてください