Partilhar via


sp_changepublication_snapshot (Transact-SQL)

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Propriedades de alteração do Agente de Instantâneo para a publicação especificada. Esse procedimento armazenado é executado no Publicador, no banco de dados publicador.

Importante

Quando você configura um Publicador com um Distribuidor remoto, os valores fornecidos para todos os parâmetros, incluindo @job_login e @job_password, são enviados ao Distribuidor como texto sem formatação. Você deve criptografar a conexão entre o Publicador e seu Distribuidor remoto antes de executar esse procedimento armazenado. Para obter mais informações, confira Configurar o Mecanismo de Banco de Dados do SQL Server para criptografia de conexões.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_changepublication_snapshot
    [ @publication = ] N'publication'
    [ , [ @frequency_type = ] frequency_type ]
    [ , [ @frequency_interval = ] frequency_interval ]
    [ , [ @frequency_subday = ] frequency_subday ]
    [ , [ @frequency_subday_interval = ] frequency_subday_interval ]
    [ , [ @frequency_relative_interval = ] frequency_relative_interval ]
    [ , [ @frequency_recurrence_factor = ] frequency_recurrence_factor ]
    [ , [ @active_start_date = ] active_start_date ]
    [ , [ @active_end_date = ] active_end_date ]
    [ , [ @active_start_time_of_day = ] active_start_time_of_day ]
    [ , [ @active_end_time_of_day = ] active_end_time_of_day ]
    [ , [ @snapshot_job_name = ] N'snapshot_job_name' ]
    [ , [ @publisher_security_mode = ] publisher_security_mode ]
    [ , [ @publisher_login = ] N'publisher_login' ]
    [ , [ @publisher_password = ] N'publisher_password' ]
    [ , [ @job_login = ] N'job_login' ]
    [ , [ @job_password = ] N'job_password' ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Argumentos

@publication [ = ] N'publicação'

O nome da publicação. @publication é sysname, sem padrão.

@frequency_type [ = ] frequency_type

Especifica a frequência com a qual o agente deve ser agendado. @frequency_type é int e pode ser um dos seguintes valores.

Valor Descrição
1 Uma vez
2 Sob demanda
4 Diário
8 Semanal
16 Mensal
32 Relativo ao mês
64 Iniciar automaticamente
128 Recorrente
NULL (padrão)

@frequency_interval [ = ] frequency_interval

Especifica os dias em que o agente é executado. @frequency_interval é int e pode ser um dos seguintes valores.

Valor Descrição
1 Domingo
2 Segunda-feira
3 Terça-feira
4 Quarta-feira
5 Quinta-feira
6 Sexta-feira
7 Sábado
8 Dia
9 Dias da semana
10 Dias de fim de semana
NULL (padrão)

@frequency_subday [ = ] frequency_subday

As unidades para @freq_subday_interval. @frequency_subday é int e pode ser um desses valores.

Valor Descrição
1 Uma vez
2 Second
4 Minuto
8 Hora
NULL (padrão)

@frequency_subday_interval [ = ] frequency_subday_interval

O intervalo para @frequency_subday. @frequency_subday_interval é int, com um padrão de NULL.

@frequency_relative_interval [ = ] frequency_relative_interval

A data em que o Snapshot Agent é executado. @frequency_relative_interval é int, com um padrão de NULL.

@frequency_recurrence_factor [ = ] frequency_recurrence_factor

O fator de recorrência usado por @frequency_type. @frequency_recurrence_factor é int, com um padrão de NULL.

@active_start_date [ = ] active_start_date

A data em que o Snapshot Agent é agendado pela primeira vez, formatado como yyyyMMdd. @active_start_date é int, com um padrão de NULL.

@active_end_date [ = ] active_end_date

A data em que o Snapshot Agent deixa de ser agendado, formatado como yyyyMMdd. @active_end_date é int, com um padrão de NULL.

@active_start_time_of_day [ = ] active_start_time_of_day

A hora do dia em que o Snapshot Agent é agendado pela primeira vez, formatado como HHmmss. @active_start_time_of_day é int, com um padrão de NULL.

@active_end_time_of_day [ = ] active_end_time_of_day

A hora do dia em que o Snapshot Agent deixa de ser agendado, formatado como HHmmss. @active_end_time_of_day é int, com um padrão de NULL.

@snapshot_job_name [ = ] N'snapshot_job_name'

O nome de um nome de trabalho existente do Snapshot Agent se um trabalho existente estiver sendo usado. @snapshot_job_name é nvarchar(100), com um padrão de NULL.

@publisher_security_mode [ = ] publisher_security_mode

O modo de segurança usado pelo agente ao se conectar ao Publicador. @publisher_security_mode é int, com um padrão de NULL. Um valor de 0 deve ser especificado para Publicadores não-SQL Server.

  • 0 especifica a autenticação do SQL Server
  • 1 especifica a autenticação do Windows

Importante

Quando possível, use a autenticação do Windows.

@publisher_login [ = ] N'publisher_login'

O logon usado na conexão com o Publicador. @publisher_login é sysname, com um padrão de NULL.

@publisher_login deve ser especificado quando @publisher_security_mode é 0. Se @publisher_login for NULL e @publisher_security_mode for 1, a conta do Windows especificada em @job_login será usada ao se conectar ao Publicador.

@publisher_password [ = ] N'publisher_password'

A senha usada ao se conectar ao Publicador. @publisher_password é sysname, com um padrão de NULL.

Importante

Não use uma senha em branco. Use uma senha forte. Quando possível, solicite que os usuários insiram as credenciais de segurança em tempo de execução. Se for necessário armazenar credenciais em um arquivo de script, você deverá proteger o arquivo para impedir acesso não autorizado.

@job_login [ = ] N'job_login'

O logon da conta do Windows sob a qual o agente é executado. @job_login é nvarchar(257), com um padrão de NULL. Essa conta do Windows sempre é usada para conexões de agente com o Distribuidor. Você deve fornecer esse parâmetro ao criar um novo trabalho do Agente de Instantâneo. Isso não pode ser alterado para um editor que não seja do SQL Server.

@job_password [ = ] N'job_password'

A senha da conta do Windows sob a qual o agente é executado. @job_password é sysname, com um padrão de NULL. Você deve fornecer esse parâmetro ao criar um novo trabalho do Agente de Instantâneo.

Importante

Quando possível, solicite que os usuários insiram as credenciais de segurança em tempo de execução. Se for necessário armazenar credenciais em um arquivo de script, você deverá proteger o arquivo para impedir acesso não autorizado.

@publisher [ = ] N'editor'

Especifica um editor que não seja do SQL Server. @publisher é sysname, com um padrão de NULL.

Observação

@publisher não deve ser usado ao criar um Snapshot Agent em um Publicador do SQL Server.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

sp_changepublication_snapshot é usado na replicação de instantâneo, replicação transacional e replicação de mesclagem.

Permissões

Somente membros da função de servidor fixa sysadmin ou db_owner função de banco de dados fixa podem executar sp_changepublication_snapshot.