none
SQL Serverミラーリングのエラー927の対応方法について RRS feed

  • 質問

  •  ミラーリングを構築中です。

     ミラーリングの開始を行ったところ、以下のメッセージが表示されました。

     ------------------------------------------------------

     ミラーリングの開始中にエラーが発生しました。

     追加情報 データベース '〇〇'のAlterに失敗しました。(Microsoft.SqlServer.Smo)

          Transact-SQL ステートメントまたはバッチの実行中に例外が発生しました。(Microsoft.SqlServer.ConnectionInfo)

          データベース’〇〇’を開けません。復元中です。(MicrosoftSQL Server、エラー:927)

     ------------------------------------------------------

     エラーの927は、OSとソフトウェアのバージョンが不整合が原因と思われる記載がネットにありました。

     現状の構成は以下のとおりです。サーバAからサーバBにミラーリングを考えています。

     サーバA:Windows Server 2012 R2 Standard、Microsoft SQL Server 2017、SQL Server Management Studio v18.6

     サーバB:Windows Server 2019 Standard、Microsoft SQL Server 2017、SQL Server Management Studio v18.6

     SQL Server Managementのバージョンをダウングレードすればよいかなど、ご教授頂きたいと思います。

     よろしくお願いいたします。

    2020年11月6日 4:01

回答

  • 一般的に、エラー 927 は、ミラーリングのエンドポイントへアクセスする権限が、SQL Server のサービス起動アカウントに指定されたアカウントに付与されていない場合に発生する可能性があるかと思います。
    SSMSからミラーリングを構築する場合においても、内部的にはT-SQLのコマンドが実行されているだけであり、SSMSのバージョンによってミラーリングの構築有無が変わっているのであれば、SSMSの不具合で本来実行すべきコマンドが抜けているなどの要因のような気がします。

    問題の切り分けとして、以下の URL を参照に、T-SQL からミラーリングを構築してみてはいかがでしょう?
    T-SQL でも正常にミラーリングを構築できない場合は、ミラーリングのエンドポイントへのアクセス権限が設定できているか、プリンシパル-ミラー間の通信でミラーリングで使用されるポートが空いているかなどを確認されると良いかと思います。


    ミラーリングのためのミラー データベースの準備 (SQL Server)
    https://docs.microsoft.com/ja-jp/sql/database-engine/database-mirroring/prepare-a-mirror-database-for-mirroring-sql-server?view=sql-server-ver15

    データベース ミラーリングの構成
    https://docs.microsoft.com/ja-jp/sql/database-engine/database-mirroring/database-mirroring-establish-session-windows-authentication?view=sql-server-ver15

    Configure the Windows Firewall to Allow SQL Server Access
    https://docs.microsoft.com/ja-jp/sql/sql-server/install/configure-the-windows-firewall-to-allow-sql-server-access?view=sql-server-ver15
    データベース ミラーリングに既定のポートはありませんが、オンライン ブックの例では、TCP ポート 5022 または 7022 を使用しています。 特に自動フェールオーバーを伴う高い安全性モードでは、使用中のミラーリング エンドポイントが中断しないようにすることが重要です。 
    ファイアウォール構成によりクォーラムが分割されないようにする必要があります。 詳細については、「 サーバー ネットワーク アドレスの指定 (データベース ミラーリング)を使用します。
    • 回答としてマーク mkoeny 2020年11月9日 12:17
    2020年11月7日 14:38

すべての返信

  • 一般的に、エラー 927 は、ミラーリングのエンドポイントへアクセスする権限が、SQL Server のサービス起動アカウントに指定されたアカウントに付与されていない場合に発生する可能性があるかと思います。
    SSMSからミラーリングを構築する場合においても、内部的にはT-SQLのコマンドが実行されているだけであり、SSMSのバージョンによってミラーリングの構築有無が変わっているのであれば、SSMSの不具合で本来実行すべきコマンドが抜けているなどの要因のような気がします。

    問題の切り分けとして、以下の URL を参照に、T-SQL からミラーリングを構築してみてはいかがでしょう?
    T-SQL でも正常にミラーリングを構築できない場合は、ミラーリングのエンドポイントへのアクセス権限が設定できているか、プリンシパル-ミラー間の通信でミラーリングで使用されるポートが空いているかなどを確認されると良いかと思います。


    ミラーリングのためのミラー データベースの準備 (SQL Server)
    https://docs.microsoft.com/ja-jp/sql/database-engine/database-mirroring/prepare-a-mirror-database-for-mirroring-sql-server?view=sql-server-ver15

    データベース ミラーリングの構成
    https://docs.microsoft.com/ja-jp/sql/database-engine/database-mirroring/database-mirroring-establish-session-windows-authentication?view=sql-server-ver15

    Configure the Windows Firewall to Allow SQL Server Access
    https://docs.microsoft.com/ja-jp/sql/sql-server/install/configure-the-windows-firewall-to-allow-sql-server-access?view=sql-server-ver15
    データベース ミラーリングに既定のポートはありませんが、オンライン ブックの例では、TCP ポート 5022 または 7022 を使用しています。 特に自動フェールオーバーを伴う高い安全性モードでは、使用中のミラーリング エンドポイントが中断しないようにすることが重要です。 
    ファイアウォール構成によりクォーラムが分割されないようにする必要があります。 詳細については、「 サーバー ネットワーク アドレスの指定 (データベース ミラーリング)を使用します。
    • 回答としてマーク mkoeny 2020年11月9日 12:17
    2020年11月7日 14:38
  • mkoenyさん、こんにちは。フォーラムオペレーターのKumoです。 
    MSDNフォーラムにご投稿くださいましてありがとうございます。

    ご質問いただいた件ですが、その後いかがでしょうか。
    NOBTAさんから寄せられた投稿はお役に立ちましたか。

    参考になった投稿には [回答としてマーク] をお願い致します。

    設定いただくことで、
    他のユーザーもお役に立つ回答を見つけやすくなります。

    お手数ですが、ご協力の程どうかよろしくお願いいたします。

    MSDN/ TechNet Community Support Kumo ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、 ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2020年11月9日 9:15
    モデレータ
  • いつもご教授ありがとうございます。

    ようやく,なんとかミラーリング設定が完了し,本日から稼働しました。

    結局,バージョンの問題なのか,ポートの問題なのか,の確認はこれから

    いろいろ変更して,絞り込みしたいと思います。

     

    2020年11月9日 12:17