指定したサービス (実際には SQL Server) の起動が完了するまで待機する単純なバッチ コマンドが必要です。ファイルは、bat
起動時にSQLサーバーへの接続を試みるいくつかの非サービス実行可能ファイルを実行します。そして彼らは失敗します。
いくつかの Windows シェル コマンド (" /?" キー)を試みましhelp
たが、必要なアクションで応答しないようです。
指定したサービス (実際には SQL Server) の起動が完了するまで待機する単純なバッチ コマンドが必要です。ファイルは、bat
起動時にSQLサーバーへの接続を試みるいくつかの非サービス実行可能ファイルを実行します。そして彼らは失敗します。
いくつかの Windows シェル コマンド (" /?" キー)を試みましhelp
たが、必要なアクションで応答しないようです。
残念ながら、このコマンドは存在しません。はsc
サービスを開始および停止でき、サービスのステータスを照会できます (この回答を参照してください)。ただし、クエリを実行しても、「サービスは実行中です」としか表示されません。サービスが開始時にどこまで到達したかを知る方法はありません。
次の 2 つの回避策があります。
最初のアプローチは役に立ちますが、問題を完全に解決することはできません。サーバーに負荷がかかると、起動に時間がかかることがあります。
2 番目のアプローチでは、タイムアウトするループを使用します (疑似コード)。
安全性を高めるために、そこに を追加しsc query
て、サービスが失敗しないようにすることができます。