Compartilhar via


sys.databases (Transact-SQL)

Contém uma linha por banco de dados na instância do SQL Server.

Aplica-se a: SQL Server (do SQL Server 2008 à versão atual), Banco de dados SQL do Azure (da versão inicial até a versão atual).

Se um banco de dados não estiver ONLINE ou se a opção AUTO_CLOSE estiver definida como ON e o banco de dados estiver fechado, os valores de algumas colunas poderão ser NULL. Se um banco de dados estiver OFFLINE, a linha correspondente não estará visível a usuários com privilégios insuficientes. Para visualizar a linha correspondente se o banco de dados estiver OFFLINE, um usuário deve ter pelo menos a permissão em nível de servidor ALTER ANY DATABASE ou a permissão CREATE DATABASE no banco de dados mestre.

Colunas relevantes ao Replicação geográfica ativa do Banco de dados SQL: is_ready_only, state e state_desc.

Nome da coluna

Tipo de dados

Descrição

name

sysname

Nome do banco de dados, exclusivo em uma instância do SQL Server ou em um servidor do Banco de dados SQL do Azure.

database_id

int

ID do banco de dados, exclusivo em uma instância do SQL Server ou em um servidor do Banco de dados SQL do Azure.

source_database_id

int

Non-NULL = ID do banco de dados de origem deste instantâneo do banco de dados.

NULL = Não é um instantâneo do banco de dados.

owner_sid

varbinary(85)

SID (Identificador de Segurança) do proprietário externo do banco de dados, como registrado para o servidor.

create_date

datetime

Data em que o banco de dados foi criado ou renomeado. Para tempdb, esse valor é alterado sempre que o servidor é reiniciado.

compatibility_level

tinyint

Inteiro que corresponde à versão do SQL Server para o qual o comportamento é compatível:

Valor

Aplica-se a

70

SQL Server 2008 ao SQL Server 2008 R2

80

SQL Server 2008 ao SQL Server 2008 R2

90

SQL Server 2008 ao SQL Server 2012

100

SQL Server 2008 ao SQL Server 2014 e Banco de dados SQL do Azure

110

SQL Server 2012 ao SQL Server 2014

120

SQL Server 2014 ao SQL Server 2014

NULL

collation_name

sysname

Agrupamento do banco de dados. Funciona como o agrupamento padrão no banco de dados.

NULL = O banco de dados não está online ou a opção AUTO_CLOSE está definida como ON e o banco de dados estiver fechado.

user_access

tinyint

Configuração de acesso do usuário:

0 = MULTI_USER especificado

1 = SINGLE_USER especificado

2 = RESTRICTED_USER especificado

user_access_desc

nvarchar(60)

Descrição da configuração do acesso do usuário.

is_read_only

bit

1 = O banco de dados é READ_ONLY

0 = O banco de dados é READ_WRITE

is_auto_close_on

bit

1 = AUTO_CLOSE está ON

0 = AUTO_CLOSE está OFF

is_auto_shrink_on

bit

1 = AUTO_SHRINK está ON

0 = AUTO_SHRINK está OFF

state

tinyint

Valor

Aplica-se a

0 = ONLINE

1 = RESTORING

2 = RECOVERING

SQL Server 2008 ao SQL Server 2014

3 = RECOVERY_PENDING

SQL Server 2008 ao SQL Server 2014

4 = SUSPECT

5 = EMERGENCY

SQL Server 2008 ao SQL Server 2014

6 = OFFLINE

SQL Server 2008 ao SQL Server 2014

7 = COPYING

Banco de dados SQL do Azure

Dica

Um banco de dados que apenas fica online não está necessariamente pronto para aceitar conexões.Para identificar quando um banco de dados pode aceitar conexões, consulte a coluna collation_name de sys.databases ou a propriedade Collation de DATABASEPROPERTYEX.O banco de dados pode aceitar conexões quando o agrupamento de banco de dados retorna um valor não nulo.Para bancos de dados AlwaysOn, consulte as colunas database_state ou database_state_desc de sys.dm_hadr_database_replica_states.

state_desc

nvarchar(60)

Descrição do estado do banco de dados.

is_in_standby

bit

O banco de dados é somente leitura para log de restauração.

is_cleanly_shutdown

bit

1 = Banco de dados desligado corretamente. Nenhuma recuperação é necessária na inicialização

0 = Banco de dados não desligado corretamente. Recuperação é necessária na inicialização

is_supplemental_logging_enabled

bit

1 = SUPPLEMENTAL_LOGGING está ON

0 = SUPPLEMENTAL_LOGGING está OFF

snapshot_isolation_state

tinyint

Estado de transações de isolamento de instantâneo permitidas, conforme definido pela opção ALLOW_SNAPSHOT_ISOLATION:

0 = O estado de isolamento de instantâneo está OFF (padrão). O isolamento de instantâneo não é permitido.

1 = O estado de isolamento de instantâneo está ON. O isolamento de instantâneo é permitido.

2 = O estado de isolamento de instantâneo está em transição para o estado OFF. Todas as transações têm suas modificações controladas por versão. Não é possível iniciar novas transações usando isolamento de instantâneo. O banco de dados permanece na transição para o estado OFF até que todas as transações que estavam ativas quando ALTER DATABASE foi executado possam ser concluídas.

3 = O estado de isolamento de instantâneo está em transição para o estado ON. Novas transações têm suas modificações controladas por versão. As transações não podem usar isolamento de instantâneo até que o estado de isolamento de instantâneo se torne 1 (ON). O banco de dados permanece na transição para o estado ON até que todas as transações de atualização que estavam ativas quando ALTER DATABASE foi executado possam ser concluídas.

snapshot_isolation_state_desc

nvarchar(60)

Descrição do estado de transações de isolamento de instantâneo permitidas, conforme definido pela opção ALLOW_SNAPSHOT_ISOLATION.

is_read_committed_snapshot_on

bit

1 = A opção READ_COMMITTED_SNAPSHOT está ON. Operações de leitura sob o nível de isolamento confirmado por leitura são baseados em varreduras de instantâneo e não adquirem bloqueios.

0 = A opção de READ_COMMITTED_SNAPSHOT está OFF (padrão). Operações de leitura sob o nível de isolamento confirmado por leitura usam bloqueios de compartilhamento.

recovery_model

tinyint

Modelo de recuperação selecionado:

1 = FULL

2 = BULK_LOGGED

3 = SIMPLE

recovery_model_desc

nvarchar(60)

Descrição de modelo de recuperação selecionado.

page_verify_option

tinyint

Configuração da opção PAGE_VERIFY:

0 = NONE

1 = TORN_PAGE_DETECTION

2 = CHECKSUM

page_verify_option_desc

nvarchar(60)

Descrição da configuração da opção PAGE_VERIFY.

is_auto_create_stats_on

bit

1 = AUTO_CREATE_STATISTICS está ON

0 = AUTO_CREATE_STATISTICS está OFF

is_auto_update_stats_on

bit

1 = AUTO_UPDATE_STATISTICS está ON

0 = AUTO_UPDATE_STATISTICS está OFF

is_auto_update_stats_async_on

bit

1 = AUTO_UPDATE_STATISTICS_ASYNC está ON

0 = AUTO_UPDATE_STATISTICS_ASYNC está OFF

is_ansi_null_default_on

bit

1 = ANSI_NULL_DEFAULT está ON

0 = ANSI_NULL_DEFAULT está OFF

is_ansi_nulls_on

bit

1 = ANSI_NULLS está ON

0 = ANSI_NULLS está OFF

is_ansi_padding_on

bit

1 = ANSI_PADDING está ON

0 = ANSI_PADDING está OFF

is_ansi_warnings_on

bit

1 = ANSI_WARNINGS está ON

0 = ANSI_WARNINGS está OFF

is_arithabort_on

bit

1 = ARITHABORT está ON

0 = ARITHABORT está OFF

is_concat_null_yields_null_on

bit

1 = CONCAT_NULL_YIELDS_NULL está ON

0 = CONCAT_NULL_YIELDS_NULL está OFF

is_numeric_roundabort_on

bit

1 = NUMERIC_ROUNDABORT está ON

0 = NUMERIC_ROUNDABORT está OFF

is_quoted_identifier_on

bit

1 = QUOTED_IDENTIFIER está ON

0 = QUOTED_IDENTIFIER está OFF

is_recursive_triggers_on

bit

1 = RECURSIVE_TRIGGERS está ON

0 = RECURSIVE_TRIGGERS está OFF

is_cursor_close_on_commit_on

bit

1 = CURSOR_CLOSE_ON_COMMIT está ON

0 = CURSOR_CLOSE_ON_COMMIT está OFF

is_local_cursor_default

bit

1 = CURSOR_DEFAULT é local

0 = CURSOR_DEFAULT é global

is_fulltext_enabled

bit

1 = Texto completo habilitado para o banco de dados

0 = Texto completo desabilitado para o banco de dados

is_trustworthy_on

bit

1 = O banco de dados foi marcado como confiável

0 = O banco de dados não foi marcado como confiável

is_db_chaining_on

bit

1 = O encadeamento de propriedades de bancos de dados está ON

0 = O encadeamento de propriedades de bancos de dados está OFF

is_parameterization_forced

bit

1 = A parametrização é FORCED

0 = A parametrização é SIMPLE

is_master_key_encrypted_by_server

bit

1 = O banco de dados tem uma chave mestra criptografada

0 = O banco de dados não tem uma chave mestra criptografada

is_published

bit

1 = O banco de dados é um banco de dados de publicação em uma topologia de replicação transacional ou de instantâneo

0 = Não é um banco de dados de publicação

is_subscribed

bit

Esta coluna não é usada. Sempre retornará 0, independentemente do status de assinante do banco de dados.

is_merge_published

bit

1 = O banco de dados é um banco de dados de publicação em uma topologia de replicação de mesclagem

0 = Não é um banco de dados de publicação em uma topologia de replicação de mesclagem

is_distributor

bit

1 = O banco de dados é o banco de dados de distribuição de uma topologia de replicação

0 = Não é o banco de dados de distribuição de uma topologia de replicação

is_sync_with_backup

bit

1 = O banco de dados está marcado para sincronização de replicação com backup

0 = Não está marcado para sincronização de replicação com backup

service_broker_guid

uniqueidentifier

Identificador do service broker para este banco de dados. Usado como a broker_instance do destino na tabela de roteamento.

is_broker_enabled

bit

1 = O agente neste banco de dados está enviando e recebendo mensagens atualmente.

0 = Todas as mensagens enviadas permanecerão na fila de transmissão e as mensagens recebidas não serão colocadas nas filas deste banco de dados.

Por padrão, bancos de dados restaurados ou anexados têm o agente desabilitado. A exceção é espelhamento de banco de dados onde o agente é habilitado após failover.

log_reuse_wait

tinyint

A reutilização do espaço de log de transações está esperando atualmente um dos seguintes itens do último ponto de verificação:

Valor

Aplica-se a

0 = Nada

1 = Checkpoint (quando um banco de dados usar um modelo de recuperação e tiver um grupo de arquivos de dados com otimização de memória, você possivelmente verá a coluna log_reuse_wait indicar checkpoint ou xtp_checkpoint.)

SQL Server 2008 ao SQL Server 2014

2 = Backup de log

SQL Server 2008 ao SQL Server 2014

3 = Backup ou restauração ativa

SQL Server 2008 ao SQL Server 2014

4 = Transação ativa

SQL Server 2008 ao SQL Server 2014

5 = Espelhamento do banco de dados

SQL Server 2008 ao SQL Server 2014

6 = Replicação

SQL Server 2008 ao SQL Server 2014

7 = Criação de instantâneo do banco de dados

SQL Server 2008 ao SQL Server 2014

8 = Verificação de log

9 = Uma réplica secundária dos Grupos de Disponibilidade AlwaysOn está aplicando registros de log de transações desse banco de dados a um banco de dados secundário correspondente.

SQL Server 2012 ao SQL Server 2014. Em versões anteriores do SQL Server, 9 = Outro (Transitório).

10 = Somente para uso interno

SQL Server 2012 ao SQL Server 2014

11 = Somente para uso interno

SQL Server 2012 ao SQL Server 2014

12 = Somente para uso interno

SQL Server 2012 ao SQL Server 2014

13 = Página mais antiga

SQL Server 2012 ao SQL Server 2014

14 = Outro

SQL Server 2012 ao SQL Server 2014

16 = XTP_CHECKPOINT (Quando um banco de dados usar um modelo de recuperação e tiver um grupo de arquivos de dados com otimização de memória, você possivelmente verá a coluna log_reuse_wait indicar checkpoint ou xtp_checkpoint.)

SQL Server 2014 ao SQL Server 2014

log_reuse_wait_desc

nvarchar(60)

No momento, a descrição da reutilização de espaço do log de transações está aguardando como um dos últimos pontos de verificação.

is_date_correlation_on

bit

1 = DATE_CORRELATION_OPTIMIZATION está ON

0 = DATE_CORRELATION_OPTIMIZATION está OFF

is_cdc_enabled

bit

1 = O banco de dados está habilitado para Change Data Capture. Para obter mais informações, consulte sys.sp_cdc_enable_db (Transact-SQL).

is_encrypted

bit

Indica se o banco de dados está criptografado (reflete o último estado definido usando a cláusula ALTER DATABASE SET ENCRYPTION). Pode ser um dos seguintes valores:

1 = Criptografado

0 = Não criptografado

Para obter mais informações sobre a criptografia de banco de dados, consulte Criptografia de Dados Transparente (TDE).

Se o banco de dados estiver no processo de ser descriptografado, is_encrypted mostrará um valor de 0. É possível ver o estado do processo de criptografia com a exibição de gerenciamento dinâmico sys.dm_database_encryption_keys.

is_honor_broker_priority_on

bit

Indica se o banco de dados cumpre prioridades de conversa (reflete o último estado definido por meio da cláusula ALTER DATABASE SET HONOR_BROKER_PRIORITY). Pode ser um dos seguintes valores:

1 = HONOR_BROKER_PRIORITY está ON

0 = HONOR_BROKER_PRIORITY está OFF

replica_id

uniqueidentifier

Identificador exclusivo da réplica de disponibilidade local do Grupos de Disponibilidade AlwaysOn do grupo de disponibilidade, se houver, no qual o banco de dados está participando.

NULL = o banco de dados não faz parte de uma réplica de disponibilidade em um grupo de disponibilidade.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

group_database_id

uniqueidentifier

Identificador exclusivo do banco de dados no grupo de disponibilidade AlwaysOn, se houver, da qual o banco de dados está participando. group_database_id é o mesmo para este banco de dados na réplica primária e em toda réplica secundária na qual o banco de dados foi unido ao grupo de disponibilidade.

NULL = o banco de dados não faz parte de uma réplica de disponibilidade em nenhum grupo de disponibilidade.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

default_language_lcid

smallint

Indica a lcid (id local) do idioma padrão de um banco de dados independente.

Observação   Funções como Configurar opção default language de configuração de servidor de sp_configure. Esse valor é null para um banco de dados dependente.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

default_language_name

nvarchar(128)

Indica o idioma padrão de um banco de dados independente.

Esse valor é null para um banco de dados dependente.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

default_fulltext_language_lcid

int

Indica a lcid (id local) do idioma de texto completo padrão do banco de dados independente.

Observação   Funções como Configurar opção de configuração de servidor default full-text language padrão de sp_configure. Esse valor é null para um banco de dados dependente.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

default_fulltext_language_name

nvarchar(128)

Indica o idioma de texto completo padrão do banco de dados independente.

Esse valor é null para um banco de dados dependente.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

is_nested_triggers_on

bit

Indica se gatilhos aninhados são permitidos no banco de dados independente.

0 = gatilhos aninhados não são permitidos

1 = gatilhos aninhados são permitidos

Observação   Funções como Configurar a opção de configuração de servidor nested triggers de sp_configure. Esse valor é null para um banco de dados dependente. Consulte sys.configurations (Transact-SQL) para obter mais informações.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

is_transform_noise_words_on

bit

Indica se palavras de ruído devem ser transformadas no banco de dados independente.

0 = palavras de ruído não devem ser transformadas.

1 = palavras de ruído devem ser transformadas.

Observação   Funções como Opção de configuração de servidor para transformar palavras de ruído de sp_configure. Esse valor é null para um banco de dados dependente. Consulte sys.configurations (Transact-SQL) para obter mais informações.

Aplica-se a: do SQL Server 2012 ao SQL Server 2014

two_digit_year_cutoff

smallint

Indica um valor de um número entre 1753 e 9999 para representar o ano de corte para interpretar anos com dois dígitos como anos de quatro dígitos.

Observação   Funções como Configurar a opção two digit year cutoff de configuração de servidor de sp_configure. Esse valor é null para um banco de dados dependente. Consulte sys.configurations (Transact-SQL) para obter mais informações.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

containment

tinyint not null

Indica o status de contenção do banco de dados.

Valor

Aplica-se a

0 = a contenção do banco de dados está desativada.

SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

1 = o banco de dados está em contenção parcial

SQL Server 2012 ao SQL Server 2014

containment_desc

nvarchar(60) not null

Indica o status de contenção do banco de dados.

NONE = banco de dados herdado (contenção zero)

PARTIAL = banco de dados parcialmente independente.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

target_recovery_time_in_seconds

int

A hora estimada para recuperar o banco de dados, em segundos. Permite valor nulo.

Aplica-se a: SQL Server 2012 ao SQL Server 2014, Banco de dados SQL do Azure

is_federation_member

bit

Indica se o banco de dados é membro de uma federação.

Aplica-se a: Banco de dados SQL do Azure

is_memory_optimized_elevate_to_snapshot_on

bit

Aplica-se a: do SQL Server 2014 ao SQL Server 2014.

As tabelas com otimização de memória são acessadas usando o isolamento SNAPSHOT quando a configuração de sessão TRANSACTION ISOLATION LEVEL é definida como um nível de isolamento inferior, READ COMMITTED ou READ UNCOMMITTED.

1 = O nível de isolamento mínimo SNAPSHOT.

0 = O nível de isolamento não é elevado.

is_auto_create_stats_incremental_on

bit

Indica a configuração padrão para a opção incremental de estatísticas automáticas.

0 = as estatísticas criadas automaticamente não são incrementais

1 = as estatísticas criadas automaticamente são incrementais se possível

Aplica-se a: do SQL Server 2014 ao SQL Server 2014.

is_query_store_on

bit

Somente para uso interno.

Aplica-se a: do SQL Server 2014 ao SQL Server 2014.

resource_pool_id

int

A ID do pool de recursos que é mapeada para esse banco de dados. Esse pool de recursos controla a memória total disponível para tabelas com otimização de memória neste banco de dados.

Aplica-se a: do SQL Server 2014 ao SQL Server 2014

Permissões

Se o chamador de sys.databases não for o proprietário do banco de dados e o banco de dados não for o mestre ou tempdb, as permissões mínimas necessárias para ver a linha correspondente serão as permissões em nível de servidor ALTER ANY DATABASE ou VIEW ANY DATABASE ou a permissão CREATE DATABASE no banco de dados mestre. O banco de dados ao qual o chamador está conectado sempre pode ser exibido em sys.databases.

Banco de dados SQL Comentários

Em Banco de dados SQL, essa exibição está disponível no banco de dados mestre e em bancos de dados de usuário. No banco de dados mestre, essa exibição retorna as informações sobre o banco de dados mestre e todos os bancos de dados de usuário no servidor. Em um banco de dados de usuário, essa exibição retorna informações apenas sobre o banco de dados atual e o banco de dados mestre.

Use a exibição de sys.databases no banco de dados mestre do servidor de Banco de dados SQL em que o novo banco de dados está sendo criado. Após o início da cópia do banco de dados, você pode consultar sys.databases e as exibições de sys.dm_database_copies do banco de dados mestre do servidor de destino para recuperar mais informações sobre o progresso da cópia.

Exemplos

A.Consultar a exibição do sys.databases

O exemplo a seguir retorna algumas das colunas disponíveis na exibição de sys.databases.

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

B.Verificar o status de cópia em Banco de dados SQL

O exemplo a seguir consulta as exibições de sys.databases e de sys.dm_database_copies para retornar informações sobre uma operação de cópia do banco de dados.

Aplica-se a: Banco de dados SQL do 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;

Consulte também

Referência

ALTER DATABASE (Transact-SQL)

sys.database_mirroring_witnesses (Transact-SQL)

sys.database_recovery_status (Transact-SQL)

Exibição de catálogo do bancos de dados e de arquivos (Transact-SQL)

Outros recursos

sys.dm_database_copies