0

別のマシンのサーバーに接続する必要があります。それが重要な場合、私はVB6を使用しています。

これは私がこれまでに行ったことです:

  1. 有効なプロトコル

  2. 固定ポートを構成しました

  3. ファイアウォールで開いているポート

私はここで何かを逃しましたか?

これは私がサーバーで使用している接続文字列です:

"Provider = SQLOLEDB.1; Integrated Security = SSPI; Persist Security Info = False; Initial Catalog = Enrollment; Data Source = D506D89D71AC41F"

正常に動作しますが、サーバーマシンにあるSQLServerに接続するためのクライアントの接続文字列はどうでしょうか。

申し訳ありませんが、1台のPCで作業しているため、現在テストできません。

4

2 に答える 2

1

前述のように、IP アドレスではなく名前でサーバーに接続することをお勧めします。

おそらく見逃している部分は、SQLBrowser サービスです。SQLBrowser を使用すると、IP アドレスの DNS サーバーと同様に、SQL Server インスタンス名をそのポート番号に再マップできます。

私はこれを提案します:

  1. SQLBrowser サービスが開始されていることを確認します。[スタート] -> [ファイル名を指定して実行] をクリックし、Services.msc と入力します。「SQL Server Browser」まで下にスクロールします。このサービスが自動に設定され、開始されていることを確認してください。

  2. SQL Server Browser は外部接続に udp ポートを使用するため、ファイアウォールで UDP ポート 1433 を開く必要があります。

この時点で、接続文字列に Data Source パラメータがある servername\instancename を使用して接続できるはずです。

"プロバイダー = SQLOLEDB.1;統合セキュリティ = SSPI;永続的なセキュリティ情報 = False;初期カタログ = 登録;データ ソース = D506D89D71AC41F\Name_Of_Instance"

既定のインスタンスを使用している場合 (実際に使用しているように見える場合)、接続文字列を変更する必要はまったくありません。

于 2013-03-16T15:08:37.480 に答える
0

クライアントがサーバーに接続するには、データ ソースを有効な URL に置き換える必要があります。何かのようなもの:

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Enrollment;Data Source=sql.mywebsite.com
于 2013-03-13T14:38:24.130 に答える