Я использую MSSQL Server 11.0.2100 (SQL Server 2012), и каждый раз, когда я перезапускаю его MSSQLSERVER service
на основном сервере или на зеркале, зеркало базы данных выходит из строя, и база данных переводится в In Recovery
режим на экземпляре SQL, который был перезапущен.
У меня нет проблем с настройкой зеркальной базы данных, и я могу без проблем переключаться между основной базой данных и зеркалом, но каждый раз, когда я перезапускаю систему, MSSQLSERVER service
все ломается.
После перевода базы данных в In Recovery
режим вывести ее из него невозможно. Единственный вариант — удалить ( drop
) базу данных.
При запуске Alter Database TestDB SET PARTNER OFF
возникает следующая ошибка:
Сообщение 945, уровень 14, состояние 2, строка 1
База данных 'TestDB' не может быть открыта из-за недоступных файлов или недостаточного количества памяти или места на диске. Подробности см. в журнале ошибок SQL Server.
При запуске Restore Database TestDB WITH RECOVERY
возникает следующая ошибка:
Сообщение 3104, уровень 16, состояние 1, строка 1
RESTORE не может работать с базой данных 'TestDB', поскольку она настроена для зеркалирования базы данных или присоединилась к группе доступности. Если вы собираетесь восстановить базу данных, используйте ALTER DATABASE для удаления зеркалирования или удаления базы данных из ее группы доступности. Сообщение 3013, уровень 16, состояние 1, строка 1 RESTORE DATABASE завершается аварийно.*
Не работает ли зеркалирование базы данных на 11.0.2100 или у меня какая-то проблема с правами доступа?
решение1
После установки 10.50.4000 (SQL Server 2008 R2 + Service Pack 2) на основном сервере и на зеркале и настройки точно так же, как на 11.0.2100, я могу подтвердить, что есть некоторые серьезные проблемы с зеркалированием базы данных в 11.0.2100. Зеркальное отображение базы данных просто не работает в 11.0.2100.
При запуске 10.50.4000 все работает отлично, и я могу без проблем перезапустить службу MSSQLSERVER.
Извлеченный урок: никогда не используйте версию SQL Server, для которой не выпущен пакет обновления.