none
Windows Server 2008 クラスタの非アクティブノードから、SQL Server 2005にSQL Server Management Studioで接続できません RRS feed

  • 質問

  • Windows Server 2008のフェールオーバークラスタ上にSQL Server 2005をインストールしましたが、
    非アクティブノードから、SQL Server 2005にSQL Server Management Studioで接続しようとすると
    下記のエラーが表示され、接続できません。
    osqlコマンドで接続すると、非アクティブノードからも接続できます。

    ------------------------------------------------------------------------------------------
    <サーバー名>\<インスタンス名>に接続できません

    サーバーへの接続を確立しているときにエラーが発生しました。SQL Server 2005に接続しているときに
    このエラーが発生した場合は、SQL Serverの規定の設定がリモート接続を許可しないようになっていることが
    エラーの原因である可能性があります。(Provider:SQL ネットワーク インターフェイス,error:26-指定された
    サーバーまたはインスタンスの位置を特定しているときにエラーが発生しました)
    ------------------------------------------------------------------------------------------

    以下の設定は行っています。
    ・SQL Serverセキュリティ構成 で、リモート接続を許可
    ・Windows ファイアウォールで、ポートの許可
        SQL Server Configuration Managerで確認した動的ポートのTCP ポート番号(名前付きインスタンスのため)
        UDP 1434


    Windows Server 2003 でも、SQL Server 2005 のクラスタを構成していましたが
    問題なく接続できておりました。
    Windwows Server 2008上にSQL Server 2005を構築したときにおきる現象でしょうか。


    同様の現象を経験された方や、解決方法をご存知の方がいらっしゃいましたら、
    ご教授お願いいたします。


    yass-ac
    2009年4月1日 4:24

回答

  • 私の環境にてテストしてみましたが、非アクティブノードからでも接続できました。(Firewall は無効にしています。)
    本環境をクラスタ以外のクライアントから SSMS より該当の仮想インスタンスへ接続しても同様のエラーになりますでしょうか。

    また、Firewall の例外に、sqlservr.exe、sqlbrowser.exe を例外に追加した場合においても、接続できない現象が発生しますでしょうか。


    • 回答としてマーク sk7474 2009年4月20日 9:16
    2009年4月7日 11:05

すべての返信

  • 念のための確認ですが、SQL Server の仮想サーバー名で接続を行っておりますでしょうか。

    2009年4月1日 10:17
  • NOBTA様

    仮想サーバ名に接続をしています。

    名前付きインスタンスを使用しているので、
    接続先は、「<仮想サーバ名>\<インスタンス名>」という形で指定しています。

    何卒、よろしくお願いいたします。

    yass-ac
    2009年4月3日 8:12
  • 私の環境にてテストしてみましたが、非アクティブノードからでも接続できました。(Firewall は無効にしています。)
    本環境をクラスタ以外のクライアントから SSMS より該当の仮想インスタンスへ接続しても同様のエラーになりますでしょうか。

    また、Firewall の例外に、sqlservr.exe、sqlbrowser.exe を例外に追加した場合においても、接続できない現象が発生しますでしょうか。


    • 回答としてマーク sk7474 2009年4月20日 9:16
    2009年4月7日 11:05
  • NOBTA様

    返答ありがとうございます。
    いろいろと、こちらでも試行錯誤しましたところ、接続ができるようになりました。
    やはりWindowsファイアウォールの設定が足りていなかったようで、下記の設定を行ったところ接続できるようになりました。
      ⇒ 「Windowsファイアウォールで、非アクティブノードのIPアドレスからのトラフィックを許可する、受信の規則を作成」

         (1)セキュリティが強化されたWindows ファイアウォールで、「受信の規則」を新規作成
         (2)[カスタム]をクリックし、[次へ]
         (3)[すべてのプログラム]をクリックし、[次へ]
         (4)[プロトコルの種類]で「任意」を選択し、[次へ]
         (5)[この規則はどのリモートIPアドレスに一致しますか?]で[追加]をクリックし、非アクティブノードの物理IPアドレスと
            SQLの仮想IPアドレスを入力
         (6)[接続を許可する]をクリック



    また、念のため、ご質問いただいた内容の回答を記載させていただきます。

    > 本環境をクラスタ以外のクライアントから SSMS より該当の仮想インスタンスへ接続しても同様のエラーになりますでしょうか。
     
    別のクライアントからは接続ができる状態でした。
    ためしに、Windowsファイアウォールで、ポートの許可を無効にしたところ、このクライアントからの接続も出来なくなりましたので、Windowsファイアウォールのポートの許可の設定は問題ないと判断しました。


    > また、Firewall の例外に、sqlservr.exe、sqlbrowser.exe を例外に追加した場合においても、接続できない現象が発生しま> すでしょうか。

    こちらについては試していないのですが、一度試してみたいと思います。

    ありがとうございました。



    yass-ac
    2009年4月10日 3:16
  • こんにちは。中川俊輔です。

    NOBTAさん、回答ありがとうございます。

    yass-acさん、はじめまして。フォーラムのご利用ありがとうございます。
    有用な情報と思われたため、NOBTAさんの回答へ回答マークをつけさせていただきました。

    今後ともフォーラムをよろしくお願いします。
    それでは!
    マイクロソフト株式会社 フォーラム オペレータ 中川 俊輔
    2009年4月20日 9:18