У меня есть автономный сервер SQL 2005 (на Windows Server 2003), к которому подключены 2 диска LUN для файлов данных и журналов транзакций.
Когда сервер перезагружается, служба SQL Server запускается до того, как диски LUN становятся доступными, что приводит к ошибкам и создает новые файлы журнала на другом диске.
Я читал несколько статей, например эту:
которые показывают вам, как это сделать с помощью диспетчера кластеров, но мой ящик не кластеризован. Кто-нибудь знает, как установить эту зависимость ??
Я не уверен, сработает это или нет, поскольку у меня нет машины с такой же проблемой, но вы можете настроить службу SQL Server так, чтобы она не запускалась, пока драйвер диска не сообщит, что она подключена к сети.
Я говорю о настройке этого ключа реестра в этом Вопросы-Ответы. Драйверы диска называются «Диск». Если это не сработает, вы захотите удалить этот параметр из реестра.
Это старый пост, но в дополнение к настройке реестра DependOnService другой возможностью было бы изменить тип запуска службы MSSQL с «Автоматический» на «Автоматический (отложенный запуск)» в Services.msc; Эта опция должна заставить службу ждать, пока другие автоматические службы не будут запущены, а затем запустить «отложенные» службы. Это должно занять минуту или две после запуска Windows. Другие службы, которые, в свою очередь, зависят от MSSQL, также должны быть настроены на отложенный запуск (например, агент SQL Server).
Я считаю, что ОС должна быть Windows Server 2008 или более поздней версии, чтобы эта опция была доступна.
Предупреждение: я сам еще не пробовал.
Вы используете программный инициатор Microsoft iSCSI? Являются ли определенные диски iSCSI динамическими?
Существует известная проблема, когда программный инициатор iSCSI не запускает должным образом динамические диски при загрузке. Моя работа заключалась в том, чтобы вместо этого переопределить привод как «базовый». Конечно, изменение этого параметра означает, что вы потеряете все данные на диске и вам придется переформатировать.
Этот сайт есть обходной путь, который может быть более полезным.