KB3051521 — ИСПРАВЛЕНИЕ: ошибка "База данных "model" не может быть открыта" при перезапуске SQL Server после резервного копирования заключительного фрагмента журнала для базы данных модели

Применяется к
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard

Проблема

Предположим, что вы создаете резервную копию заключительного фрагмента журнала для базы данных модели, которая использует параметр norecovery в Microsoft SQL Server 2014 или SQL Server 2012, и база данных переведена в состояние восстановления. После завершения резервного копирования вы не сможете перезапустить службу SQL Server, и в журнале ошибок SQL Server появится следующее сообщение об ошибке:

Примечание

< Дата><Время> spid10s. База данных "model" помечена как RESTORING и находится в состоянии, которое не позволяет выполнять восстановление.
< Дата><Время> spid10s Error: 927, Серьезность: 14, State: 2.
< Дата><Время> невозможно открыть базу данных spid10s model. Он находится в центре восстановления.
< Дата><Время> spid10s не удалось создать tempdb. Возможно, у вас недостаточно свободного места на диске. Освободите дополнительное место на диске, удалив другие файлы на диске tempdb, а затем перезапустите SQL Server. Проверьте наличие дополнительных ошибок в журнале событий, которые могут указывать, почему не удалось инициализировать файлы tempdb.
< Дата><Время> трассировка SQL spid10s была остановлена из-за завершения работы сервера. Идентификатор трассировки = '1'. Это только информационное сообщение; не требуется никаких действий пользователя.

Причина

Эта проблема возникает из-за того, что база данных модели используется в качестве шаблона для всех баз данных, созданных на экземпляре SQL Server. Если база данных модели помечена как не разрешающая состояние восстановления, база данных tempdb не может быть создана, а служба SQL Server не может запуститься.

Решение

Сведения о пакете обновления

Чтобы устранить эту проблему, получите пакет обновления 1 (SP1) для SQL Server 2014.

Дополнительные сведения о SQL Server 2014 с пакетом обновления 1 (SP1) см. в статье Ошибки, исправленные в SQL Server 2014 с пакетом обновления 1 (SP1).

Временное решение

Чтобы обойти эту проблему, используйте следующий метод:

  • Запретить все подключения из приложения к SQL Server
  • Запустите службу SQL Server вместе с флагом трассировки 3608
  • Выполните команду "restore database Model with recovery" (Восстановление модели базы данных с помощью восстановления).
  • Удалите флаг трассировки 3608 и перезапустите SQL Server

Состояние

Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».