.NETで作る!

.NETに関するあれこれ(C#、VB.NET)

DBeaver で SQL Server に接続する 

新規にSQLServer建てたら初期設定では接続失敗したのでメモ。

SQLServerExpress2019をインストール

今回は設定は変えずそのままインストールしたものとしています

DBeaverに接続先を登録

何も考えずにインストールするとWindows認証になりますので、DBeaverもそれに合わせます。 f:id:mk3008net:20200504150858p:plain

「Host」と「Authentication」、「Trues Server Certificate」の項目に注意。

「テスト接続」するとエラーが起きた

ホスト localhost、名前付きインスタンス SQLEXPRESS への接続が失敗しました。 エラー: "java.net.SocketTimeoutException: Receive timed out"。サーバーとインスタンスの名前を調べ、ポート 1434 への UDP トラフィックファイアウォールにブロックされていないことを確認してください。 SQL Server 2005 以降では、SQL Server Browser サービスがホスト上で実行されていることを確認してください。

対応

SQL Server Browser サービス」が起動しているか確認する。SQL Server  Configuration Manager を見ると「停止」になっている。

f:id:mk3008net:20200504150903p:plain

起動したいのだが、起動という選択肢がでない。

サービスが停止していると起動ができないらしい。管理ツールのサービスから同サービスを起動させる。

参考:https://ips.nekotype.com/4404/

f:id:mk3008net:20200504150914p:plain

スタートアップの種類を「自動」とか「手動」に変える。ついでに起動もさせておく。

※サービスが起動しているならSQL Server  Configuration Manager画面でも起動停止の制御が可能。

「テスト接続」すると別のエラーが起きた

サーバー SQLEXPRESS は、TCP/IP をリッスンするように構成されていません。

対応

SQL Server  Configuration Manager にてプロトコルTCP/IP」を有効にしておく。 f:id:mk3008net:20200504150918p:plain

参考:https://symfoware.blog.fc2.com/blog-entry-920.html

再起動が必要だというので、SQL Server  Configuration Managerにて「SQL Server」のサービスを再起動しておく。 f:id:mk3008net:20200504150923p:plain

これで接続に成功した。

. .