web-dev-qa-db-ja.com

Navicat PremiumでLocalDBサーバーに接続できません

PCにLocalDbサーバーをインストールしました。

Navicat PremiumでLocalDBサーバーへの接続を作成しようとしています。

LocalDBサーバーの正しいホスト名/ IPアドレスを取得できません。

デフォルトでは、LocalDBサーバーは起動時に常にMSSQLLocalDBという名前のインスタンスを作成することに気付きました。インターネットを検索しましたが、Navicatプレミアムソフトウェアの問題の正確な解決策が見つかりませんでした。

ここに私が得ているエラーがあります:

enter image description here

LocalDBサーバーのみをインストールしました。 SQL Serverネイティブクライアントではありませんか? SQL Server Express Editionは必要ないため、LocalDBサーバーとMS SQL Server Express Editionの両方をインストールしたくありません。

SQL Server Native Clientのインストール と言う:

SQL Server 2016をインストールすると、Microsoft SQL Server Native Client 11.0がインストールされます。SQLServer 2016 Native Clientはありません。

最近のSQL Server 2016 LocalDBを使用しています。ダウンロードリンクはSQL Server 2012用であると思います。ネイティブクライアントを必要としないSQL Server 2016を使用しています。


もう少し試してみたところ、以下の2番目の画像ファイルに示すように、新しいエラーに遭遇することができました。画像でわかるように、インスタンス名は正しいと思います。

enter image description here

2
Bikash Behera

NavicatはLocalDBと同じコンピューターにインストールされていますか? LocalDBはリモート接続を許可していません。

Navicatが同じコンピューターにインストールされていると仮定します:Navicatはサービスまたはデスクトップアプリケーションですか? LocalDBは、デフォルトでは、ログインのみが表示できるプライベートユーザープロセスとして実行されます(実行中のデスクトップアプリケーションでは問題ありません)。他の人(サービスなど)がLocalDBインスタンスにアクセスできるようにする場合は、sqllocaldb.exeコマンドを使用して共有する必要がありますラインユーティリティ。

また、#1:(localhost)\MSSQLLocalDBは有効な構文ではありません。 (localdb)\InstanceNameを指定する理由は、その(localdb)\部分が、基礎となる接続ライブラリが理解し、LocalDBライブラリにハンドオフする特別な構文であるためです(インスタンスを自動起動できるため、特別です) LocalDBの構文を使用して接続しようとするだけです)。

また、#2:SQL Server Native Clientは接続ライブラリ(ODBCは別のタイプの接続ライブラリです)であり、SQL Serverに接続するためにNavicatによって使用されています。 NavicatがSQL Server Native Clientをインストールする必要があると言っている場合は、Microsoftからダウンロードする必要があります。そして、はい、それの最後のバージョンはSQL Server 2012用でした。しかし、Navicatがそれを必要とする場合、それはちょっと必要です。

Navicat Premium はデスクトップアプリであるため、インスタンスに共有することを心配する必要はありません。これにアクセスできる他のユーザーがコンピューターにログオンしている場合を除きます。インスタンス。しかし、とりあえず、それはあなただけが使っていると思います。 LocalDBはサービスではないため常に実行されているわけではなく、(localdb)\somethingへの接続を試行することで自動起動できることに注意してください。LocalDBインスタンスには数秒かかることに注意してください。始めること。少なくともSQL Server Management Studio(SSMS)では、かかる時間はデフォルトの接続タイムアウトよりも長くなります。そのため、最初に接続するときにタイムアウトエラーが発生することが予想されるため、すぐに再接続を試みます。長時間(数分)待って再度接続を試みると、接続が数分間ない場合にインスタンスが自動シャットダウンするため、タイムアウトが再び発生します。

したがって、再び、LocalDBとNavicatの両方が同じコンピューター上で同じWindowsログインで実行されていると想定して、(localdb)\MSSQLLocalDBに接続してみてください。接続タイムアウトエラーが発生した場合は、すぐに接続を再試行してください。それが機能しない場合は、何か他の問題があります。

2
Solomon Rutzky