none
dbnetlib connectionopen(connect().) sqlserverが存在しないか、アクセスが拒否されました RRS feed

  • 質問

  • サーバ情報
    OS:WinSVR2016
    SQLServer:SQL Server Mnagement Studio 2017
    Access:MicrosoftAccess2016

    クライアント①
    OS:Win 8.1 pro
    AccessRuntime:Access2016

    クライアント②
    OS:Win 10 home
    AccessRuntime:Access2013


    【起きている現象】

    <前提条件>

    Aプログラム(accdeファイル)

    SQLサーバ:スキーマA

    Bプログラム(accdeファイル)
    SQLサーバ:スキーマB

    先週の金曜日(2021/4/9)まで問題なくどちらも稼働(1年以上)していたが、
    週明け(2021/4/12)からBプログラムをクライアント側で起動することができなくなりました。
    ただクライアント①②どちらともAプログラムが起動することは確認できています。
    また、Bプログラムもクライアント①②ともにたまに起動することがあります。


    【クライアント】
    サーバ側に置いている.accdeファイルを実行するバッチをクライアント側に置いている。
    →バッチ:サーバから持ってきた.accdeファイルをローカルにコピーし、そのファイルを開く処理

    バッチを起動させると、Accessが起動するがエラーになり終了される。
    →dbnetlib connectionopen(connect().) sqlserverが存在しないか、アクセスが拒否されましたエラー
     というエラーメッセージが出てきて終了します


    【試したこと】
    ①サーバとクライアントをハブを介して繋いぎ、クライアント側でBプログラムを実行する
     →dbnetlib connectionopen(connect().) sqlserverが存在しないか、アクセスが拒否されました(上記と同じエラー)
     →ランケーブル、ハブなどの問題ではなさそう

    ②クライアント側でEXCELを起動し、SQLSERVERに接続
     →正常に接続でき、Bスキーマのテーブルデータ取得できた

    ③クライアント側のAccessRuntime2016(32ビット版)を再インストールし、Bプログラムを実行するがエラーとなる
     →dbnetlib connectionopen(connect().) sqlserverが存在しないか、アクセスが拒否されました(上記と同じエラー)

    ④サーバ設定の変更
     TCP/IPの有効化
     Firewall設定の変更
     SQL Server Browserの起動
     SQL Serverの再起動

     →dbnetlib connectionopen(connect().) sqlserverが存在しないか、アクセスが拒否されました(上記と同じエラー)

    色々手を尽くしていますが、解決できません。

    何かわかる方いられましたら、教えていただけますと幸いです。


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

    2021年4月19日 10:56

すべての返信

  • SQL Server 2017 は既定のインスタンス、名前付きインスタンスの何れとなりますでしょうか?

    また、Aプログラム、Bプログラム が参照する SQL Server インスタンスは同じインスタンスになりますでしょうか?

    Bプログラムが起動することがあるというのは、現状の状態においても「dbnetlib connectionopen(connect().) sqlserverが存在しないか、アクセスが拒否されました(上記と同じエラー)」 が発生せず、BプログラムからSQL Serverに接続ができ、使用できる状態に完全することがあるということでしょうか?

    2021年4月20日 15:17
  • B プログラムが何の設定を変更もせず、接続できたり、できなかったりするというのは、とても不思議な現象ですね。

    本件の調査を進める方法として、正常時、問題発生時の両パターンで、BID トレースの採取、クライアント - SQL Server の両環境でネットワーク トレースを採取し、情報を比較してみると良いかもしれませんが、解析が難しいため、マイクロソフトのサポートにお問い合わせをあげてみたほうが良いかもしれません。

    なお、問題の切り分けとして、クライアント側、SQL Server 側の Windows Firewall 設定を無効にしてみる、ウィルスソフトがインストールされている場合は無効化して接続ができる状態に改善するかなどを実施してみても良いかもしれません。

    HowTo: BID トレース - データアクセス アプリケーションのトレースを採取する
    https://social.technet.microsoft.com/Forums/windows/ja-JP/9e70811f-999e-426c-aec2-ffe72ab4f8a8/howto-bid-?forum=jpbidp

    2021年4月20日 15:40
  • 123456pnさん、こんにちは。フォーラムオペレーターのHarukaです。
    MSDNフォーラムにご投稿くださいましてありがとうございます。

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

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

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

    どうぞよろしくお願いいたします。

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

    2021年4月21日 7:49
    モデレータ