Поделиться через


Состояния базы данных

База данных всегда находится в определенном состоянии. Например, к этим состояниям относятся состояния ONLINE, OFFLINE или SUSPECT. Чтобы проверить текущее состояние базы данных, выберите столбец state_desc в представлении каталога sys.databases или свойство Status в функции DATABASEPROPERTYEX.

Определения состояний базы данных

Состояния базы данных определяются в следующей таблице.

Состояние

Определение

ONLINE

База данных доступна. Первичная файловая группа находится в оперативном режиме, хотя возможно не завершена стадия отката восстановления.

OFFLINE

База данных недоступна. База данных переходит в автономный режим с помощью явного указания пользователя и остается в автономном режиме до тех пор, пока пользователем не будет предпринято дополнительное действие. Например, база данных может быть переведена а автономный режим, чтобы переместить файл на другой диск. После завершения перемещения файла база данных снова переводится в оперативный режим.

RESTORING

Восстанавливаются один или несколько файлов, принадлежащих к первичной файловой группе, или один или более файлов, принадлежащих ко вторичным группам, причем база данных остается в оперативном режиме. База данных недоступна.

RECOVERING

База данных в процессе восстановления. Процесс восстановления является переходным состоянием; после успешного завершения восстановления база данных автоматически переходит в автономный режим. При неудачном завершении восстановления база данных будет помечена как подозрительная. База данных недоступна.

RECOVERY PENDING

В приложении SQL Server во время восстановления произошла ошибка, связанная с ресурсами. База данных не повреждена, но, возможно, потеряны файлы или ограничения системных ресурсов препятствуют началу процесса восстановления. База данных недоступна. Со стороны пользователя требуется дополнительное действие, чтобы исправить ошибку и разрешить завершение процесса восстановления.

SUSPECT

По меньшей мере, первичная файловая группа помечена как подозрительная и, возможно, повреждена. База данных не может быть восстановлена во время запуска SQL Server. База данных недоступна. Со стороны пользователя требуется дополнительное действие, чтобы устранить проблему.

EMERGENCY

Пользователь изменил базу данных и установил состояние базы данных в значение EMERGENCY. База данных находится в однопользовательском режиме и, возможно, в процессе исправления или восстановления. База данных помечена как READ_ONLY, ведение журнала отключено и доступ возможен только элементам предопределенной роли сервера sysadmin. EMERGENCY используется в основном для диагностики. Например, база данных, помеченная как подозрительная, может быть переведена в состояние EMERGENCY. Это предоставляет системному администратору доступ к базе данных только для чтения. Только члены предопределенной роли сервера sysadmin могут перевести базу данных в состояние EMERGENCY.