none
Backups perdem "referência" do nome e caminho na tabela de Backups - Erro ao restaurar RRS feed

  • Pergunta

  • Percebemos um erro ao tentar restaurar nossos backups. A mensagem de erro é

    TÍTULO: Microsoft SQL Server Management Studio
    ------------------------------
    
    Restaurar falhou para Servidor '000.000.000.000'(Alterado por segurança).  (Microsoft.SqlServer.SmoExtended)
    
    Para obter ajuda, clique em: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1617.0+((KJ_RTM_GDR).110422-1901+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Restaurar+Server&LinkId=20476
    
    ------------------------------
    INFORMAÇÕES ADICIONAIS:
    
    System.Data.SqlClient.SqlError: Cannot open backup device '{C2BD8B42-6649-4799-8663-F836210F0FAB}7'. Operating system error 2(O sistema não pode encontrar o arquivo especificado.). (Microsoft.SqlServer.Smo)
    
    

    O backup é realizado através de planos de manutenção.
    Percebemos que o backup completo e o 1º Backup de log perde a referência de nome do arquivo e caminho do mesmo (imagem anexa).

    O plano que executa o backup mensal e completo, também realiza uma recompilação de índices e a verificação de integridade da base.

    O backup de logs executa na primeira hora útil da empresa e é recorrente baseado em um intervalo de tempo. Há, diariamente, na madrugada, uma atualização de estatísticas.

    Percebemos que isto não é exclusivo de um único banco de dados.

    Ao solicitar a geração do script desta tela, o seguinte código é gerado:

    RESTORE DATABASE [teste] FROM  TAPE = N'{C2BD8B42-6649-4799-8663-F836210F0FAB}7' WITH  FILE = 1,  MOVE N'NomeBancoOriginal_Data' TO N'E:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\teste.MDF',  MOVE N'NomeBancoOriginal_Log' TO N'G:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\teste_1.LDF',  NORECOVERY,  NOUNLOAD,  STATS = 10
    GO
    RESTORE LOG [teste] FROM  DISK = N'NUL' WITH  FILE = 1,  NORECOVERY,  NOUNLOAD,  STATS = 10
    GO
    RESTORE LOG [teste] FROM  DISK = N'F:\BKPs\NomeBancoOriginal\NomeBancoOriginal_backup_2014_11_18_080016_3388375.trn' WITH  FILE = 1,  RECOVERY,  NOUNLOAD,  STATS = 10
    GO

    Não entendi o porquê o sql indicar a fonte como "TAPE".

    Segue estrutura dos planos:


    Agradeço o auxílio dos demasis.


    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento

    terça-feira, 18 de novembro de 2014 14:17

Respostas

  • Bom dia!!

    No caso, era o mesmo plano de manutenção, que apontava para disco, como mostra a imagem acima. Por algum motivo, o SQL Server tentava salvar em disco.

    Apaguei o plano e recriei. O problema continua.

    Observei que alguns dos backups executados estavam com usuário sysadmin do SQL, exibido corretamente, outros com a autoridade NT AUTHORITY/SYSTEM, sem o nome e que não pode ser restaurado pelo SQL Server.

    Os backups com usuário NT AUTHORITY/SYSTEM são sempre os dois primeiros. 

    Alguma sugestão do por quê isto ocorrer, visto que o plano de backup utiliza a mesma conexão e todos são subplanos do mesmo?


    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento

    terça-feira, 23 de dezembro de 2014 11:04

Todas as Respostas

  • Alex_fsi,

    Tente através do Management Studio, utilizar os comando abaixo:

    Use Master
    
    --Retorna Informações sobre as mídias de backup --
    Restore LabelOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    --Retorna Informações sobre os backups --
    Restore HeaderOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    /* O comando RESTORE VERIFYONLY realiza uma checagem na integridade dos backups de um 
    dispositivo, verificando se o mesmo é legível, este comando não verifica a estrutura de 
    dados existente dentro do backup. Se o backup for válido, o SQL Server retorna uma mensagem 
    de sucesso.*/
    Restore VerifyOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    -- Retorna informações sobre os arquivos de dados e log (*.mdf, *.ndf e *.ldf) armazenados em um dispositivo --
    Restore FileListOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    Muda as informações sobre o seu arquivo de backup e log de armazenamento.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    quarta-feira, 19 de novembro de 2014 12:30
    Moderador
  • Alex_fsi,

    Tente através do Management Studio, utilizar os comando abaixo:

    Use Master
    
    --Retorna Informações sobre as mídias de backup --
    Restore LabelOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    --Retorna Informações sobre os backups --
    Restore HeaderOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    /* O comando RESTORE VERIFYONLY realiza uma checagem na integridade dos backups de um 
    dispositivo, verificando se o mesmo é legível, este comando não verifica a estrutura de 
    dados existente dentro do backup. Se o backup for válido, o SQL Server retorna uma mensagem 
    de sucesso.*/
    Restore VerifyOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    -- Retorna informações sobre os arquivos de dados e log (*.mdf, *.ndf e *.ldf) armazenados em um dispositivo --
    Restore FileListOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    Muda as informações sobre o seu arquivo de backup e log de armazenamento.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    Junior, seguem resultados:

    Consulta 1:
    MediaName MediaSetId FamilyCount FamilySequenceNumber MediaFamilyId MediaSequenceNumber MediaLabelPresent MediaDescription SoftwareName SoftwareVendorId MediaDate MirrorCount IsCompressed
    NULL FCCF5DA8-DE9F-4A6B-B076-812388962B15 1 1 0A9EFE4F-0000-0000-0000-000000000000 1 0 NULL Microsoft SQL Server 4608 2014-11-17 22:12:04.000 1 1


    Consulta 2:
    BackupName BackupDescription BackupType ExpirationDate Compressed Position DeviceType UserName ServerName DatabaseName DatabaseVersion DatabaseCreationDate BackupSize FirstLSN LastLSN CheckpointLSN DatabaseBackupLSN BackupStartDate BackupFinishDate SortOrder CodePage UnicodeLocaleId UnicodeComparisonStyle CompatibilityLevel SoftwareVendorId SoftwareVersionMajor SoftwareVersionMinor SoftwareVersionBuild MachineName Flags BindingID RecoveryForkID Collation FamilyGUID HasBulkLoggedData IsSnapshot IsReadOnly IsSingleUser HasBackupChecksums IsDamaged BeginsLogChain HasIncompleteMetaData IsForceOffline IsCopyOnly FirstRecoveryForkID ForkPointLSN RecoveryModel DifferentialBaseLSN DifferentialBaseGUID BackupTypeDescription BackupSetGUID CompressedBackupSize
    MINHABASE_backup_2014_11_17_221145_6849959 NULL 1 NULL 1 1 2 sa NOMESERVIDOR MINHABASE 661 2014-09-13 12:56:08.000 60730039296 63931000000659200104 63934000000048700001 63931000000659200104 63897000000129900292 2014-11-17 22:12:04.000 2014-11-17 22:18:45.000 0 0 1033 196609 80 4608 10 50 4033 NOMESERVIDOR 512 67FA6169-953E-45FF-8C9F-3B602360D4AB 7277A082-5D21-41E4-B54E-160CEFE6AF96 Latin1_General_CI_AS 9DB2333A-2266-42D7-BD65-F293BA10CFA0 0 0 0 0 0 0 0 0 0 0 7277A082-5D21-41E4-B54E-160CEFE6AF96 NULL FULL NULL NULL Database F9BC0263-BDED-4F6C-A860-C4B7116C7B1E 11559840436


    Consulta 3:
    LogicalName PhysicalName Type FileGroupName Size MaxSize FileId CreateLSN DropLSN UniqueId ReadOnlyLSN ReadWriteLSN BackupSizeInBytes SourceBlockSize FileGroupId LogGroupGUID DifferentialBaseLSN DifferentialBaseGUID IsReadOnly IsPresent TDEThumbprint
    MINHABASE_Data Z:\CAMINHOMDF\MINHABASE.MDF D PRIMARY 62800199680 35184372080640 1 0 0 00000000-0000-0000-0000-000000000000 0 0 60727427072 512 1 NULL 63897000000129900292 110790CD-B33E-43FD-B051-04F6DB9870BC 0 1 NULL
    MINHABASE_Log Z:\CAMINHOLOG\MINHABASE_1.LDF L NULL 27522891776 35184372080640 2 0 0 00000000-0000-0000-0000-000000000000 0 0 0 512 0 NULL 0 00000000-0000-0000-0000-000000000000 0 1 NULL

    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento


    • Editado Alex_fsi quarta-feira, 19 de novembro de 2014 13:07 Clareza dos dados
    quarta-feira, 19 de novembro de 2014 13:07
  • Alex_fsi,

    Tente através do Management Studio, utilizar os comando abaixo:

    Use Master
    
    --Retorna Informações sobre as mídias de backup --
    Restore LabelOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    --Retorna Informações sobre os backups --
    Restore HeaderOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    /* O comando RESTORE VERIFYONLY realiza uma checagem na integridade dos backups de um 
    dispositivo, verificando se o mesmo é legível, este comando não verifica a estrutura de 
    dados existente dentro do backup. Se o backup for válido, o SQL Server retorna uma mensagem 
    de sucesso.*/
    Restore VerifyOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    
    -- Retorna informações sobre os arquivos de dados e log (*.mdf, *.ndf e *.ldf) armazenados em um dispositivo --
    Restore FileListOnly from Disk = 'C:\Backup\Backup-Simples-Criptografia.bak'
    Muda as informações sobre o seu arquivo de backup e log de armazenamento.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    Pedro, eram estes os resultados esperados?

    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento

    segunda-feira, 24 de novembro de 2014 21:31
  • Olá Alex,

    Gosto bastante do assunto, e talvez possa tentar dar uns "pitacos"... 

     --Query para listar os backups realizados com seus respectivos caminhos de armazenamento.
     SELECT database_name,type,position,first_lsn,last_lsn,backup_finish_date,begins_log_chain,is_copy_only,BMF.physical_device_name
       FROM MSDB..backupset BS
      INNER JOIN MSDB..backupmediafamily BMF
         ON BS.media_set_id = BMF.media_set_id
    WHERE database_name = 'seu_Banco'
      ORDER BY backup_finish_date
    GO

    Se a query acima ainda retornar o o destino do Backup Full como "TAPE", sugiro verificar o seu plano de manutenção...

    =)

    Abraço


    Edvaldo Castro MCTS - SQL SERVER 2005/2008 MCITP:DBA SQL SERVER 2005/2008 CCSQLA: Cambridge Certified SQL Associate MCT Alumni

    sexta-feira, 5 de dezembro de 2014 12:11
  • Alex,

    A indicação do "Tape" pode estar relacionada há um mapeamento realizado para um "dispositivo de backup".

    O processo tanto para "fita" como para o "disco" são semelhantes, a única parte que parece curioso é que este seu script parece que foi "gerado" e obteve a GUID deste "dispositivo" provavelmente por ter sido removido ou perdido sua referência, mas este objeto permanece mapeado em seu "Plano de Manutenção".

    Você pode utilizar o script abaixo para verificar os dispositivos criados para este banco de dados.

    SELECT * FROM sys.backup_devices
    GO


    Eu sugiro que você apague a referência deste "dispositivo" no Plano de Manutenção e crie outra para evitar perdas de arquivos de backup.

    Para maiores informações veja:

    http://msdn.microsoft.com/pt-br/library/ms189109.aspx

    http://msdn.microsoft.com/pt-br/library/ms187883.aspx

    http://msdn.microsoft.com/pt-br/library/hh710041.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    segunda-feira, 8 de dezembro de 2014 15:18
  • Alex,

    Sim estes sãos resultados esperados, o que mostra que você não esta perdendo a referência, mas sim esta se confundindo com o local de armazenamento ou até mesmo o tipo de mídia que esta sendo envolvida no processo de backup.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    terça-feira, 9 de dezembro de 2014 21:47
    Moderador
  • Bom dia!!

    No caso, era o mesmo plano de manutenção, que apontava para disco, como mostra a imagem acima. Por algum motivo, o SQL Server tentava salvar em disco.

    Apaguei o plano e recriei. O problema continua.

    Observei que alguns dos backups executados estavam com usuário sysadmin do SQL, exibido corretamente, outros com a autoridade NT AUTHORITY/SYSTEM, sem o nome e que não pode ser restaurado pelo SQL Server.

    Os backups com usuário NT AUTHORITY/SYSTEM são sempre os dois primeiros. 

    Alguma sugestão do por quê isto ocorrer, visto que o plano de backup utiliza a mesma conexão e todos são subplanos do mesmo?


    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento

    terça-feira, 23 de dezembro de 2014 11:04
  • Bom dia!!

    No caso, era o mesmo plano de manutenção, que apontava para disco, como mostra a imagem acima. Por algum motivo, o SQL Server tentava salvar em disco.

    Apaguei o plano e recriei. O problema continua.

    Observei que alguns dos backups executados estavam com usuário sysadmin do SQL, exibido corretamente, outros com a autoridade NT AUTHORITY/SYSTEM, sem o nome e que não pode ser restaurado pelo SQL Server.

    Os backups com usuário NT AUTHORITY/SYSTEM são sempre os dois primeiros. 

    Alguma sugestão do por quê isto ocorrer, visto que o plano de backup utiliza a mesma conexão e todos são subplanos do mesmo?


    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento

    terça-feira, 23 de dezembro de 2014 11:04
  • Alex_fsi,

    Você já verificou nas propriedades do seu Servidor na Guia Databases qual é o local que esta configurado para armazenar os arquivos de banco de dados e backup?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    terça-feira, 23 de dezembro de 2014 12:15
    Moderador
  • Alex_fsi,

    Você já verificou nas propriedades do seu Servidor na Guia Databases qual é o local que esta configurado para armazenar os arquivos de banco de dados e backup?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    No caso, há somente a opção de dados e log. Não encontrei a opção do caminho padrão de backup.

    Mas os backups são salvos em outra partição, no mesmo servidor, que é monitorada e todo novo arquivo transferido para locais de segurança. Todos os arquivos tem sido salvos, e não tive problema para mover, renomear ou excluir os arquivos mais antigos, ou seja, não identifiquei problemas de permissão.

    O que me estranha é o fato de backups do usuário NT AUTHORITY/SYSTEM darem erros e um usuário do SQL não. Editei os planos, criando uma nova conexão com o usuário cujos backups estão ok, portanto, vou analisar os backups criados à partir de agora para ver se o problema persiste.

    Novamente, muito obrigado pela atenção, pessoal.


    Alex de Figueiredo Siqueira Estudante de Sistemas de Informação e Gerente de TI na área de Desenvolvimento

    terça-feira, 23 de dezembro de 2014 12:39
  • Alex_fsi,

    Certo, você deve estar trabalhando como SQL Server 2008 R2 ou 2008.

    Então, vamos lá, este erro em relação ao NT AUTHORITY/SYSTEM  esta correto, pois é uma conta de usuário que existe no Windows, mas significa que ele tenha permissão de gravação dos dados, normalmente ele tem que leitura.

    Talvez seja um ponto de atenção em validar se as configurações de permissão para acesso aos locais de gravação dos backups estão com acesso disponível.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com

    terça-feira, 23 de dezembro de 2014 13:41
    Moderador