Usuário com melhor resposta
Erro no BACKUP

Pergunta
-
Respostas
-
Prezado Dyego,
O que está acontecendo é: Foi efetuado um backup com a opção EXPIREDATE = '2017-10-06 10:05:49.000'.
Se tiver feito este backup via interface gráfica, isso pode ter sido setado e você não ter percebido.
Na imagem abaixo, veja na linha 15 eu faço um backup com esse parâmetro EXPIREDATE.
Na linha 16, restauro o header do arquivo de backup, veja que ficou setada a data de expiração.
Na linha 17, eu pego o mesmo erro que você teve, eu tento fazer um backup para o mesmo arquivo, iniciando a midia, porém, a data de expiração é maior que a data (dia de hoje), fazendo que o sql te retorne este erro, em outras palavras, o sql server te disse: Você não pode iniciar a mídia, porque essa mídia, só expira no dia X...
Jefferson Santos [MCTS SQL Server]
- Sugerido como Resposta Jefferson O Santos domingo, 24 de setembro de 2017 23:59
- Não Sugerido como Resposta Jefferson O Santos segunda-feira, 25 de setembro de 2017 00:04
- Marcado como Resposta Junior Galvão - MVPMVP, Moderator quinta-feira, 28 de setembro de 2017 00:28
-
Especifica que todos os conjuntos de backup devem ser substituídos, mas preserva o cabeçalho de mídia. Se INIT estiver especificado, qualquer conjunto de backup existente naquele dispositivo será substituído, se as condições permitirem. Por padrão, BACKUP verificará as seguintes condições e não substituirá a mídia de backup se qualquer uma delas existir:
-
Um conjunto de backup ainda não expirou.Para obter mais informações, consulte as opções EXPIREDATE e RETAINDAYS.
-
O nome do conjunto de backup fornecido na instrução BACKUP, se fornecido, não corresponde ao nome na mídia de backup.Para obter mais informações, consulte a opção NAME, anteriormente nesta seção.
Fonte: https://msdn.microsoft.com/pt-br/library/ms186865%28v=sql.120%29.aspx?f=255&MSPPError=-2147217396
Parece que vc tem que alterar o período de expiração dos backups
Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)
- Editado Vinicius_Fonseca quinta-feira, 21 de setembro de 2017 17:53
- Sugerido como Resposta Vinicius_Fonseca segunda-feira, 25 de setembro de 2017 18:05
- Não Sugerido como Resposta Vinicius_Fonseca segunda-feira, 25 de setembro de 2017 18:05
- Marcado como Resposta Junior Galvão - MVPMVP, Moderator quinta-feira, 28 de setembro de 2017 00:28
-
Todas as Respostas
-
Olá Dyego,
veja o link abaixo, pode ter a ver com as propriedades que você usa no momento de realizar o backup.
https://dba.stackexchange.com/questions/98536/how-to-generate-an-error-when-backing-up-to-an-existing-file
Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)
- Editado Vinicius_Fonseca quinta-feira, 21 de setembro de 2017 16:44
-
-
Passe um pouco dos detalhes do script ou do plano de manutenção que você está usando para fazer o backup.
De qualquer forma dê uma olhada nas propriedades INIT/NOINIT e SKIP/NOSKIP.
Segue link com referência:
https://msdn.microsoft.com/pt-br/library/ms186865(v=sql.120).aspx
Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)
-
Olá Dyego.
Você tentou fazer o backup sobrescrevendo o backup set existente?
Se estiver utilizando a interface gráfica do ssms, vá até "Media Options" e escolha a opção "Overwrite all existing backup sets"
Se estiver utilizando linha de comando, coloque a opção "INIT".
Entenda que esta opção fará a substituição do backup set existente e então você terá apenas o bkp atual que está tentando fazer.
Este erro que está dando, me parece que é oriundo de algum agendamento de expiração feito via job.... vc está tentando executar um job já criado?
Luiz Fernando Lima - MCTS SQL Server - Microsoft Partner
-
Uso esse script em outros clientes também, e todos funcionam normalmente
DECLARE @cmdSQL NVARCHAR(200);
SET @cmdSQL = 'BACKUP DATABASE Banco TO DISK = '
+ CHAR(39)
+'caminho\banco_Diario-'
+ DateName(WEEKDAY, GETDATE())
+'-full.BAK'
+ CHAR(39)
+ ' WITH init'
+', COMPRESSION';
EXEC MASTER..SP_EXECUTESQL @cmdSQL
GO
- Editado Dyego Rodrigues quinta-feira, 21 de setembro de 2017 17:43
-
Especifica que todos os conjuntos de backup devem ser substituídos, mas preserva o cabeçalho de mídia. Se INIT estiver especificado, qualquer conjunto de backup existente naquele dispositivo será substituído, se as condições permitirem. Por padrão, BACKUP verificará as seguintes condições e não substituirá a mídia de backup se qualquer uma delas existir:
-
Um conjunto de backup ainda não expirou.Para obter mais informações, consulte as opções EXPIREDATE e RETAINDAYS.
-
O nome do conjunto de backup fornecido na instrução BACKUP, se fornecido, não corresponde ao nome na mídia de backup.Para obter mais informações, consulte a opção NAME, anteriormente nesta seção.
Fonte: https://msdn.microsoft.com/pt-br/library/ms186865%28v=sql.120%29.aspx?f=255&MSPPError=-2147217396
Parece que vc tem que alterar o período de expiração dos backups
Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)
- Editado Vinicius_Fonseca quinta-feira, 21 de setembro de 2017 17:53
- Sugerido como Resposta Vinicius_Fonseca segunda-feira, 25 de setembro de 2017 18:05
- Não Sugerido como Resposta Vinicius_Fonseca segunda-feira, 25 de setembro de 2017 18:05
- Marcado como Resposta Junior Galvão - MVPMVP, Moderator quinta-feira, 28 de setembro de 2017 00:28
-
-
Prezado Dyego,
O que está acontecendo é: Foi efetuado um backup com a opção EXPIREDATE = '2017-10-06 10:05:49.000'.
Se tiver feito este backup via interface gráfica, isso pode ter sido setado e você não ter percebido.
Na imagem abaixo, veja na linha 15 eu faço um backup com esse parâmetro EXPIREDATE.
Na linha 16, restauro o header do arquivo de backup, veja que ficou setada a data de expiração.
Na linha 17, eu pego o mesmo erro que você teve, eu tento fazer um backup para o mesmo arquivo, iniciando a midia, porém, a data de expiração é maior que a data (dia de hoje), fazendo que o sql te retorne este erro, em outras palavras, o sql server te disse: Você não pode iniciar a mídia, porque essa mídia, só expira no dia X...
Jefferson Santos [MCTS SQL Server]
- Sugerido como Resposta Jefferson O Santos domingo, 24 de setembro de 2017 23:59
- Não Sugerido como Resposta Jefferson O Santos segunda-feira, 25 de setembro de 2017 00:04
- Marcado como Resposta Junior Galvão - MVPMVP, Moderator quinta-feira, 28 de setembro de 2017 00:28