Назад | Перейти на главную страницу

Резервное копирование по расписанию SQL Server: sqlcmd.exe не может подключиться

У меня есть самодельная система резервного копирования для SQL Server 2008 Express на Windows Server 2008. Запланированная задача запускает файл .bat, который, в свою очередь, вызывает sqlcmd.exe для запуска файла .sql, который выполняет резервное копирование всех баз данных в файлы .bak. Запланированная задача работает нормально, если я щелкаю ее правой кнопкой мыши и выбираю «Выполнить», но когда запланированная задача запускается посреди ночи, sqlcmd.exe не может подключиться к серверу, вызывая ошибку:

Sqlcmd: Error: Microsoft SQL Server Native Client 10.0 :
Unable to complete login process due to delay in opening server connection.

У меня есть запланированная задача, настроенная на выполнение от имени меня, поэтому пользователь всегда один и тот же. Он настроен на запуск независимо от того, вошел я в систему или нет, и настроен на сохранение пароля. Он также установлен на «запускать с наивысшими привилегиями».

Строка sqlcmd.exe пакетного сценария:

"c:\program files\microsoft sql server\100\tools\binn\sqlcmd.exe" -s 127.0.0.1\SQLEXPRESS -i c:\web\backup_mssql.sql -o sqlcmd.log -b -E

Я знаю, что в документации указано, что аргумент -s должен быть -S, но команда не может подключиться, когда я использую -S.

Возникает вопрос: почему он может подключаться днем, а ночью - нет?

Я наконец-то решил проблему, изменив время начала запланированной задачи с 1 до 2 часов ночи. Что-то еще должно сильно загружать систему в 1:00, так что время ожидания соединения действительно истекло.