Tabelas de aplicativo da camada de dados – sysdac_history_internal

Aplica-se a:SQL Server

Contém informações sobre as ações realizadas para gerenciar aplicativos da camada de dados (DAC). Essa tabela é armazenada no esquema dbo do banco de dados msdb .

Nome da coluna Tipo de dados Descrição
action_id int Identificador da ação
sequence_id int Identifica uma etapa dentro de uma ação.
instance_id uniqueidentifier Identificador da instância do DAC. Essa coluna pode ser unida na coluna instance_id em dbo.sysdac_instances (Transact-SQL).
action_type tinyint Identificador do tipo da ação:

0 = implantar

1 = criar

2 = renomear

3 = desanexar

4 = excluir
action_type_name varchar(19) Nome do tipo de ação.

deploy

create

rename

Desanexar

delete
dac_object_type tinyint Identificador do tipo de objeto afetado pela ação:

0 = dacpac

1 = logon

2 = banco de dados
dac_object_type_name varchar(8) Nome do tipo de objeto afetado pela ação:

dacpac = instância do DAC

Login

database
action_status tinyint Código que identifica o status atual da ação:

0 = pendente

1 = êxito

2 = falha
action_status_name varchar(11) Status atual da ação:

pendente

Sucesso

Falhar
Necessário bit Usado pelo Mecanismo de Banco de Dados ao reverter uma operação da DAC.
dac_object_name_pretran sysname Nome do objeto antes que a transação que contém a ação seja confirmada. Usado somente para bancos de dados e logons.
dac_object_name_posttran sysname Nome do objeto depois que a transação que contém a ação seja confirmada. Usado somente para bancos de dados e logons.
sqlscript nvarchar(max) Script Transact-SQL que implementa uma ação em um banco de dados ou logon.
payload varbinary(max) Definição de pacote do DAC salva em uma cadeia de caracteres codificada binária.
Comentários varchar(max) Registra o logon de um usuário que aceitou perda de dados potencial em uma atualização de DAC.
error_string nvarchar(max) Mensagem de erro gerada se a ação encontrar um erro.
created_by sysname O logon que iniciou a ação que criou essa entrada.
date_created datetime A data e a hora de criação dessa entrada.
date_modified datetime A data e a hora da última alteração feita na entrada.

Comentários

As ações de gerenciamento do DAC, como implantar ou excluir um DAC, geram várias etapas. Cada ação é atribuída um identificador de ação. Cada etapa recebe um número de sequência e uma linha em sysdac_history_internal, em que a status da etapa é registrada. Cada linha é criada quando inicia a etapa de ação e é atualizada para refletir o status da operação quando necessário. Por exemplo, uma ação implantar DAC pode ser atribuída action_id 12 e obter quatro linhas em sysdac_history_internal:

action_id sequence_id action_type_name dac_object_type_name
12 0 create dacpac
12 1 create login
12 2 create Banco de Dados
12 3 renomear Banco de Dados

Operações da DAC, como excluir, não removem linhas de sysdac_history_internal. Você pode usar a seguinte consulta para excluir manualmente as linhas de DACs que não são mais implantadas em uma instância do Mecanismo de Banco de Dados:

DELETE FROM msdb.dbo.sysdac_history_internal  
WHERE instance_id NOT IN  
   (SELECT instance_id  
    FROM msdb.dbo.sysdac_instances_internal);  

A exclusão das linhas dos DACs ativos não impacta as operações DAC; o único impacto é que você não conseguirá reportar o histórico completo do DAC.

Observação

Atualmente, não há mecanismo para excluir linhas sysdac_history_internal no Banco de Dados SQL do Azure.

Permissões

Requer associação na função de servidor fixa sysadmin. O acesso somente leitura a essa exibição está disponível para todos os usuários com permissões para se conectar ao banco de dados master.

Consulte Também

Aplicativos da camada de dados
dbo.sysdac_instances (Transact-SQL)
sysdac_instances_internal (Transact-SQL)