sys.databases (Transact-SQL)

Содержит одну строку для каждой базы данных экземпляра Microsoft SQL Server или сервера База данных SQL Windows Azure.

Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск).

Если база данных не находится в режиме ONLINE или параметр AUTO_CLOSE установлен в значение ON, а база данных закрыта, некоторые столбцы могут содержать значение NULL. Если база данных находится в режиме OFFLINE, соответствующая строка не будет видна пользователям с недостаточными правами доступа. Чтобы увидеть соответствующую строку в случае, если база данных находится в режиме OFFLINE, пользователю по крайней мере необходимо иметь разрешение уровня сервера ALTER ANY DATABASE или разрешение CREATE DATABASE в базе данных master.

Имя столбца

Тип данных

Описание

Имя

sysname

Имя базы данных, уникальное внутри экземпляра SQL Server или на сервере База данных SQL Windows Azure.

database_id

int

Идентификатор базы данных, уникальный внутри экземпляра SQL Server или на сервере База данных SQL Windows Azure.

source_database_id

int

Не NULL = идентификатор базы данных-источника данного моментального снимка базы данных.

NULL = моментальный снимок не базы данных.

owner_sid

varbinary(85)

SID (идентификатор безопасности) внешнего владельца базы данных, зарегистрированного на сервере.

create_date

datetime

Дата создания или переименования базы данных. Для базы данных tempdb это значение изменяется каждый раз при перезапуске сервера.

compatibility_level

tinyint

Целое число, которое соответствует версии SQL Server, для которой поведение совместимо:

Значение

Область применения

70

SQL Server 2008 и SQL Server 2008 R2

80

SQL Server 2008 и SQL Server 2008 R2

90

С SQL Server 2008 по SQL Server 2012 и База данных SQL Windows Azure

100

С SQL Server 2008 по SQL Server 2012 и База данных SQL Windows Azure

110

SQL Server 2012

NULL

С SQL Server 2008 по SQL Server 2012 и База данных SQL Windows Azure

NULL — база данных не находится в режиме «в сети», либо параметр AUTO_CLOSE установлен в ON, и база данных закрыта.

collation_name

sysname

Параметры сортировки для базы данных. Действует как параметры сортировки по умолчанию для базы данных.

NULL — база данных не находится в режиме «в сети», либо параметр AUTO_CLOSE установлен в ON, и база данных закрыта.

user_access

tinyint

Установка доступа пользователя:

0 = указано MULTI_USER.

1 = указано SINGLE_USER;

2 = указан RESTRICTED_USER.

user_access_desc

nvarchar(60)

Описание установки доступа пользователя:

MULTI_USER

SINGLE_USER

RESTRICTED_USER

is_read_only

bit

1 = база данных находится в режиме READ_ONLY

0 = база данных находится в режиме READ_WRITE

is_auto_close_on

bit

1 = параметр AUTO_CLOSE находится в состоянии ON

0 = параметр AUTO_CLOSE находится в состоянии OFF

is_auto_shrink_on

bit

1 = параметр AUTO_SHRINK находится в состоянии ON

0 = параметр AUTO_SHRINK находится в состоянии OFF

состояние

tinyint

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

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = EMERGENCY

6 = OFFLINE

7 = COPYING (действительно для База данных SQL Windows Azure)

База данных SQL Windows Azure возвращает состояния 0, 1, 4 и 7.

ПримечаниеПримечание

База данных, которая только что перешла в режим «в сети», не обязательно готова к приему соединений. Чтобы определить, может ли база данных принимать соединения, выполните запрос к столбцу collation_name представления sys.databases или к свойству Collation DATABASEPROPERTYEX. База данных может принимать соединения, если параметры сортировки базы данных возвращают значение, отличное от NULL. Применительно к базам данных AlwaysOn выполните запрос к столбцу database_state или database_state_desc представления sys.dm_hadr_database_replica_states.

Дополнительные сведения см. в разделе Состояния базы данных.

state_desc

nvarchar(60)

Описание состояния базы данных:

  • ONLINE

  • RESTORING

  • RECOVERING

  • RECOVERY_PENDING

  • SUSPECT

    Для База данных SQL SUSPECT = процесс копирования завершился ошибкой.

  • EMERGENCY

  • OFFLINE

  • COPYING

is_in_standby

bit

База данных доступна только для чтения для журнала восстановления.

is_cleanly_shutdown

bit

1 = база данных закрыта верно; восстановление при запуске не требуется

0 = база данных закрыта неверно; требуется восстановление при запуске

is_supplemental_logging_enabled

bit

1 = SUPPLEMENTAL_LOGGING в состоянии ON

0 = SUPPLEMENTAL_LOGGING в состоянии OFF

snapshot_isolation_state

tinyint

Состояние транзакций изоляции моментальных снимков, задаваемое при помощи параметра ALLOW_SNAPSHOT_ISOLATION.

0 = изоляция моментальных снимков в состоянии OFF (по умолчанию). Изоляция моментальных снимков запрещена.

1 = изоляция моментальных снимков в состоянии ON. Изоляция моментальных снимков разрешена.

2 = изоляция моментальных снимков в состоянии перехода в состояние OFF. Для всех транзакций записываются изменения. Нельзя запустить новые транзакции, использующие изоляцию моментальных снимков. База данных находится в состоянии перехода в состояние OFF до тех пор, пока все транзакции, активные при выполнении инструкции ALTER DATABASE, не будут завершены.

3 = изоляция моментальных снимков в состоянии перехода в состояние ON. Для новых транзакций записываются изменения. Транзакции не могут использовать изоляцию моментальных снимков до тех пор, пока состояние изоляции моментальных снимков не перейдет в 1 (ON). База данных находится в состоянии перехода в состояние ON до тех пор, пока все транзакции, активные при выполнении инструкции ALTER DATABASE, не будут завершены.

snapshot_isolation_state_desc

nvarchar(60)

Описание состояния транзакций изоляции моментальных снимков, задаваемое при помощи параметра ALLOW_SNAPSHOT_ISOLATION:

  • OFF

  • ON

  • IN_TRANSITION_TO_ON

  • IN_TRANSITION_TO_OFF

is_read_committed_snapshot_on

bit

1 = параметр READ_COMMITTED_SNAPSHOT установлен в значение ON. Операции чтения с уровнем изоляции read-committed основаны на просмотре моментальных снимков и не запрашивают блокировок.

0 = параметр READ_COMMITTED_SNAPSHOT установлен в значение OFF (по умолчанию). Операции чтения с уровнем изоляции read-committed используют разделяемые блокировки.

recovery_model

tinyint

Выбранная модель восстановления:

1 = FULL

2 = BULK_LOGGED

3 = SIMPLE

recovery_model_desc

nvarchar(60)

Описание выбранной модели восстановления:

  • FULL

  • BULK_LOGGED

  • SIMPLE

page_verify_option

tinyint

Значение параметра PAGE_VERIFY:

0 = NONE

1 = TORN_PAGE_DETECTION

2 = CHECKSUM

page_verify_option_desc

nvarchar(60)

Описание значений параметра PAGE_VERIFY:

NONE

TORN_PAGE_DETECTION

CHECKSUM

is_auto_create_stats_on

bit

1 = AUTO_CREATE_STATISTICS в состоянии ON

0 = AUTO_CREATE_STATISTICS в состоянии OFF

is_auto_update_stats_on

bit

1 = AUTO_UPDATE_STATISTICS в состоянии ON

0 = AUTO_UPDATE_STATISTICS в состоянии OFF

is_auto_update_stats_async_on

bit

1 = AUTO_UPDATE_STATISTICS_ASYNC в состоянии ON

0 = AUTO_CREATE_STATISTICS_ASYNC в состоянии OFF

is_ansi_null_default_on

bit

1 = ANSI_NULL_DEFAULT в состоянии ON

0 = ANSI_NULL_DEFAULT в состоянии OFF

is_ansi_nulls_on

bit

1 = ANSI_NULLS в состоянии ON

0 = ANSI_NULLS в состоянии OFF

is_ansi_padding_on

bit

1 = ANSI_PADDING в состоянии ON

0 = ANSI_PADDING в состоянии OFF

is_ansi_warnings_on

bit

1 = ANSI_WARNINGS в состоянии ON

0 = ANSI_WARNINGS в состоянии OFF

is_arithabort_on

bit

1 = ARITHABORT в состоянии ON

0 = ARITHABORT в состоянии OFF

is_concat_null_yields_null_on

bit

1 = CONCAT_NULL_YIELDS_NULL в состоянии ON

0 = CONCAT_NULL_YIELDS_NULL в состоянии OFF

is_numeric_roundabort_on

bit

1 = NUMERIC_ROUNDABORT в состоянии ON

0 = NUMERIC_ROUNDABORT в состоянии OFF

is_quoted_identifier_on

bit

1 = QUOTED_IDENTIFIER в состоянии ON

0 = QUOTED_IDENTIFIER в состоянии OFF

is_recursive_triggers_on

bit

1 = RECURSIVE_TRIGGERS в состоянии ON

0 = RECURSIVE_TRIGGERS в состоянии OFF

is_cursor_close_on_commit_on

bit

1 = CURSOR_CLOSE_ON_COMMIT в состоянии ON

0 = CURSOR_CLOSE_ON_COMMIT в состоянии OFF

is_local_cursor_default

bit

1 = CURSOR_DEFAULT соответствует локальному курсору

0 = CURSOR_DEFAULT соответствует глобальному курсору

is_fulltext_enabled

bit

1 = полнотекстовый режим включен для данной базы данных

0 = полнотекстовый режим отключен для данной базы данных

is_trustworthy_on

bit

1 = база данных помечена как надежная

0 = база данных не помечена как надежная

is_db_chaining_on

bit

1 = межбазовые цепочки владения в состоянии ON

0 = межбазовые цепочки владения в состоянии OFF

is_parameterization_forced

bit

1 = параметризация в состоянии FORCED

0 = параметризация в состоянии SIMPLE

is_master_key_encrypted_by_server

bit

1 = база данных имеет главный ключ шифрования

0 = база данных не имеет главного ключа шифрования

is_published

bit

1 = база данных является базой данных публикации в топологии репликации транзакций или моментальных снимков

0 = не является базой данных публикации

is_subscribed

bit

Данный столбец не используется. Он всегда возвращает 0, независимо от состояния подписчика базы данных.

is_merge_published

bit

1 = база данных является базой данных публикации в топологии репликации слиянием

0 = база данных не является базой данных публикации в топологии репликации слиянием

is_distributor

bit

1 = база данных является базой данных распространителя в топологии репликации

0 = база данных не является базой данных распространителя в топологии репликации

is_sync_with_backup

bit

1 = база данных помечена для синхронизации с резервной копией при помощи репликации

0 = база данных не помечена для синхронизации с резервной копией при помощи репликации

service_broker_guid

uniqueidentifier

Идентификатор компонента Service Broker для данной базы данных. Используется как целевой экземпляр broker_instance в таблице маршрутизации.

is_broker_enabled

bit

1 = брокер в этой базе данных в данный момент отправляет и принимает сообщения.

0 = все отправленные сообщения останутся в очереди передачи, а полученные сообщения не будут помещены в очередь в этой базе данных.

По умолчанию в восстановленных или прикрепленных базах данных брокер отключен. Исключением является зеркальное отображение базы данных, при котором брокер включается после отработки отказа.

log_reuse_wait

tinyint

Действие или объект, ожидаемые в настоящий момент журналом транзакций:

0 = ничего;

1 = контрольная точка;

2 = резервная копия журнала;

3 = активное резервное копирование или восстановление;

4 = активная транзакция;

5 = зеркальное отображение базы данных;

6 = репликация;

7 = создание моментального снимка базы данных;

8 = просмотр журнала;

9 = вторичная реплика Группы доступности AlwaysOn применяет записи журнала транзакций этой базы данных к соответствующей базе данных-получателю.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 включительно. В более ранних версиях SQL Server 9 = прочее (нерегулярный).

10 = только для внутреннего использования;

11 = только для внутреннего использования;

12 = только для внутреннего использования;

13 = самая старая страница;

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 включительно.

14 = другое (переходное).

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 включительно.

log_reuse_wait_desc

nvarchar(60)

Описание действия или объекта, ожидаемого в настоящий момент журналом транзакций:

  • NOTHING

  • CHECKPOINT

  • LOG_BACKUP

    ПримечаниеПримечание

    Если причиной является LOG_BACKUP, могут потребоваться две резервные копии, чтобы действительно освободить пространство.

  • ACTIVE_BACKUP_OR_RESTORE

  • ACTIVE_TRANSACTION

  • DATABASE_MIRRORING

  • REPLICATION

  • DATABASE_SNAPSHOT_CREATION

  • LOG_SCAN

  • AVAILABILITY_REPLICA

    ПримечаниеПримечание

    Чтобы определить, какая из баз данных-получателей задерживает усечение журнала, см. столбец truncation_lsn динамического административного представления sys.dm_hadr_database_replica_states.

  • Только для внутреннего использования

  • Только для внутреннего использования

  • Только для внутреннего использования

  • OLDEST_PAGE

  • OTHER_TRANSIENT

is_date_correlation_on

bit

1 = DATE_CORRELATION_OPTIMIZATION в состоянии ON

0 = DATE_CORRELATION_OPTIMIZATION в состоянии OFF

is_cdc_enabled

bit

1 = в базе данных включена система отслеживания измененных данных. Дополнительные сведения см. в разделе sys.sp_cdc_enable_db (Transact-SQL).

is_encrypted

bit

Указывает, зашифрована ли база данных (отражает последнее состояние, установленное с помощью предложения ALTER DATABASE SET ENCRYPTION). Может использоваться одно из следующих значений:

1 = зашифрована;

0 = не зашифрована.

Дополнительные сведения о шифровании баз данных см. в разделе Прозрачное шифрование данных (TDE).

Если база данных находится в процессе расшифровки, столбец is_encrypted отображает значение 0. Состояние процесса шифрования базы данных можно просмотреть с помощью динамического административного представления sys.dm_database_encryption_keys.

is_honor_broker_priority_on

bit

Указывает, учитываются ли в базе данных приоритеты диалогов (отражает последнее состояние, установленное предложением ALTER DATABASE SET HONOR_BROKER_PRIORITY). Может использоваться одно из следующих значений:

1 = HONOR_BROKER_PRIORITY имеет значение ON;

0 = HONOR_BROKER_PRIORITY имеет значение OFF.

replica_id

uniqueidentifier

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

NULL = база данных не является частью реплики доступности в группе доступности.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

group_database_id

uniqueidentifier

Уникальный идентификатор базы данных в группе доступности, в которой участвует база данных, если такая группа имеется. Значение group_database_id для этой базы данных совпадает в первичной реплике и в каждой вторичной реплике, для которой база данных присоединена к группе доступности.

NULL = база данных не является частью реплики доступности в любой группе доступности.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

default_language_lcid

smallint

Указывает идентификатор локали (lcid) языка по умолчанию автономной базы данных.

Примечание. Такие функции, как Настройка параметра конфигурации сервера «язык по умолчанию», хранимой процедуры sp_configure. Это значение равно null для неавтономной базы данных.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

default_language_name

nvarchar(128)

Указывает язык по умолчанию автономной базы данных.

Это значение равно null для неавтономной базы данных.

default_fulltext_language_lcid

int

Указывает идентификатор локали (lcid) языка полнотекстового поиска по умолчанию автономной базы данных.

Примечание. Такие функции, как Настройка параметра конфигурации сервера «язык полнотекстового поиска по умолчанию», по умолчанию хранимой процедуры sp_configure. Это значение равно null для неавтономной базы данных.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

default_fulltext_language_name

nvarchar(128)

Указывает язык полнотекстового поиска по умолчанию автономной базы данных.

Это значение равно null для неавтономной базы данных.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

is_nested_triggers_on

bit

Указывает, разрешены ли вложенные триггеры в автономной базе данных.

0 = вложенные триггеры не разрешены

1 = вложенные триггеры разрешены

Примечание. Такие функции, как Настройка конфигурации сервера nested triggers хранимой процедуры sp_configure. Это значение равно null для неавтономной базы данных. Дополнительные сведения см. в разделе sys.configurations (Transact-SQL).

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

is_transform_noise_words_on

bit

Указывает должны ли преобразовываться пропускаемые слова в автономной базе данных.

0 = пропускаемые слова не преобразовываются.

1 = пропускаемые слова преобразовываются.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 включительно.

Примечание. Такие функции, как Параметр конфигурации сервера «transform noise words» хранимой процедуры sp_configure. Это значение равно null для неавтономной базы данных. Дополнительные сведения см. в разделе sys.configurations (Transact-SQL).

two_digit_year_cutoff

smallint

Указывает числовое значение в диапазоне от 1753 до 9999, представляющее пороговый год для интерпретации года, представленного двумя цифрами, в виде года, представленного четырьмя цифрами.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

Примечание. Такие функции, как Настройка параметра конфигурации сервера two digit year cutoff, хранимой процедуры sp_configure. Это значение равно null для неавтономной базы данных. Дополнительные сведения см. в разделе sys.configurations (Transact-SQL).

containment

tinyint not null

Указывает состояние включения базы данных.

0 = включение базы данных отключено

1 = база данных находится в состоянии частичного включения

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

containment_desc

nvarchar(60) not null

Указывает состояние включения базы данных.

NONE = прежняя версия базы данных (нулевое включение)

PARTIAL = частично автономная база данных

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 и База данных SQL.

target_recovery_time_in_seconds

int

Предполагаемое время восстановления базы данных в секундах. Значение NULL допустимо.

Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2012 включительно.

is_federation_member

bit

Указывает, является ли база данных членом федерации.

Применимо для следующих объектов: База данных SQL Windows Azure

Разрешения

Если участник sys.databases не является владельцем базы данных, а база данных не является базой данных master или tempdb, минимально необходимыми разрешениями для просмотра соответствующей строки являются разрешения уровня сервера ALTER ANY DATABASE или VIEW ANY DATABASE либо разрешение CREATE DATABASE в базе данных master. Определить базу данных, к которой подключен участник, можно в представлении каталога sys.databases.

База данных SQL Windows Azure Замечания

В База данных SQL Windows Azure это представление доступно в базе данных master и в пользовательских базах данных. В базе данных master это представление возвращает сведения о базе данных master и обо всех пользовательских базах данных на сервере. В пользовательской базе данных это представление возвращает сведения только по текущей базе данных и базе данных master.

Воспользуйтесь представлением sys.databases в базе данных master на сервере База данных SQL Windows Azure, где создается новая база данных. После запуска копирования базы данных вы можете выполнять запросы к представлениям sys.databases и sys.dm_database_copies из базы данных master на целевом сервере, чтобы получать дополнительные сведения о ходе копирования.

Примеры

А.Запрос к представлению sys.databases

Следующий пример возвращает несколько столбцов, доступных в представлении sys.databases.

Применимо для следующих объектов: С SQL Server 2008 по SQL Server 2012 и База данных SQL Windows Azure

SELECT name, user_access_desc, is_read_only, state_desc, recovery_model_desc
FROM sys.databases;

Б.Проверьте состояние копирования в База данных SQL Windows Azure

Следующие примеры запросов к представлениям sys.databases и sys.dm_database_copies возвращают сведения об операции копирования базы данных.

Применимо для следующих объектов: База данных SQL Windows Azure

-- Execute from the master database.
SELECT a.name, a.state_desc, b.start_date, b.modify_date, b.percentage_complete
FROM sys.databases AS a
INNER JOIN sys.dm_database_copies AS b ON a.database_id = b.database_id
WHERE a.state = 7;

См. также

Справочник

ALTER DATABASE (Transact-SQL)

sys.database_mirroring_witnesses (Transact-SQL)

sys.database_recovery_status (Transact-SQL)

Представления каталогов баз данных и файлов (Transact-SQL)

Другие ресурсы

sys.dm_database_copies