次の接続文字列を使用して、リモート SQL Server インスタンスに接続しています
"Network Library=DBMSSOCN;Data Source=xx.xxx.x.xxx,1433;Initial Catalog=MyDatabase;User Id=MyUserId;Password=MyPassword;Connect Timeout=120;"
- Sql サーバー ブラウザーが実行されている
- ローカルおよびリモート接続は、TCP/IP のみを使用して許可されます
アプリケーションは、次の SqlException を引用してランダムに接続に失敗します
TCP プロバイダー、エラー: 0 - 接続先が一定時間後に適切に応答しなかったために接続の試行が失敗したか、接続されたホストが応答しなかったために確立された接続が失敗しました
次のように接続するコード
using (SqlConnection connection = new SqlConnection(m_ConnectionString))
{
connection.Open(); // falls over here
}
ポート 1433 のファイアウォール設定について考えましたが、ファイアウォールが接続を許可する場合と許可しない場合があるのはなぜですか?
Sql Server エージェントを実行する必要がありますか? もしそうなら、MSDNのSql Server Agentの説明がこの点で明らかではないのはなぜですか?
ありがとう!
編集: ファイアウォールに明示的なルールを追加して 1433 を開くことを試みましたが、これまでのところ非常に良好ですが、修正するかどうかを言うのは難しいため、再びランダムになる可能性があります