none
Arquivo .mdf perdido. RRS feed

  • Pergunta

  • Pessoal bom dia.

    Estou analisando problema de espaço em disco em um servidor de produção.

    E vi que no diretório onde fica os arquivos de dados .mdf possui dois arquivos com o mesmo nome porém um tem o caractere (~) na frente.

    exemplo:

    (nome_do_arquivo.mdf ) e o outro é (~nome_do_arquivo.mdf).

    Olhando os logs vi que na data que gerou esse arquivo o servidor foi reiniciado devido a atualização.

    Alguém poderia me ajudar o que pode ter ocasionado essa situação, e se este (~nome_do_arquivo.mdf) seria um arquivo perdido que pertencia ao mesmo banco ?

    Desde já agradeço.

    sexta-feira, 13 de março de 2015 13:49

Todas as Respostas

  • Samuel,

    Você disse que esta arquivo foi criado devido a uma atualização? Acredito que isso deve ter sido por algum service pack que você aplicou e o SQL Server por algum motive realizou cópias dos seus bancos de dados como forma para garantir a última posição em caso de falha.

    Agora você poderia descrever um pouco mais o seu ambiente?


    Pedro Antonio Galvao Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    sexta-feira, 13 de março de 2015 17:33
    Moderador
  • Samuel,

    Honestamente, nunca vi o SQL Server renomear um arquivo .mdf em atualização de SP. Quando você aplica um Service Pack uma serie de informações são logadas do errorlog do SQL Server, eu aconselharia você a procurar neste log o que pode ter acontecido. Sem isso é praticamente impossivel você obter uma resposta mais concreta.

    Obrigado!


    Att,
    Marcos Freccia [MTA|MCTS|MCITP|MCT SQL Server 2008]
    Blog|Twitter
    Assine também os feeds clicando aqui

    domingo, 15 de março de 2015 18:19
  • Samuel, é um banco de dados de empresa?

    Faça backup e restore.

    O backup vai garantir caso tenha algum problema e o restore vai sobrescrever os arquivos MDF.

    segunda-feira, 16 de março de 2015 12:58
  • Samuel

    Também desconheço que o SP altera o nome do arquivo, mas em todo o caso você pode executar a query abaixo para saber quais são os arquivos que estão em uso pelos Databases.

    select db_name(database_id), physical_name from sys.master_files


    Att.
    Marcelo Fernandes
    MCP, MCDBA, MCSA, MCTS, MCITP, MCT e MVP.
    Se Útil, classifique!!!
    Me siga no twitter: @marcelodba

    • Sugerido como Resposta Durval Ramos terça-feira, 31 de março de 2015 14:22
    segunda-feira, 16 de março de 2015 20:16
    Moderador
  • Samuel,

    Honestamente, nunca vi o SQL Server renomear um arquivo .mdf em atualização de SP. Quando você aplica um Service Pack uma serie de informações são logadas do errorlog do SQL Server, eu aconselharia você a procurar neste log o que pode ter acontecido. Sem isso é praticamente impossivel você obter uma resposta mais concreta.

    Obrigado!


    Att,
    Marcos Freccia [MTA|MCTS|MCITP|MCT SQL Server 2008]
    Blog|Twitter
    Assine também os feeds clicando aqui

    Freccia,

    Sinceramente eu fiquei surpreso com este comportamento, mas conversei recentemente com um amigo meu DBA e o mesmo disse que presenciou um cenário similar a este no SQL Server 2005 com SP3 e SP4.


    Pedro Antonio Galvao Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quarta-feira, 18 de março de 2015 19:37
    Moderador
  • Desde já agradeço pela ajuda, ainda estou com esse incidente porque estou na duvida se posso ou não deletar esse arquivo e liberar espaço em disco.

    Junior bom dia, ainda referente a esse arquivo tem como eu postar uma imagem nesse fórum ?

    segunda-feira, 30 de março de 2015 14:25
  • Desde já agradeço pela ajuda, ainda estou com esse incidente porque estou na duvida se posso ou não deletar esse arquivo e liberar espaço em disco.
    segunda-feira, 30 de março de 2015 14:28
  • Desde já agradeço pela ajuda, ainda estou com esse incidente porque estou na duvida se posso ou não deletar esse arquivo e liberar espaço em disco.
    segunda-feira, 30 de março de 2015 14:28
  • Desde já agradeço pela ajuda, ainda estou com esse incidente porque estou na duvida se posso ou não deletar esse arquivo e liberar espaço em disco.
    segunda-feira, 30 de março de 2015 14:28
  • Samuel,

    Para inserir uma imagem, use o botão destacado em amarelo.


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    segunda-feira, 30 de março de 2015 14:49
  • @Samuel,

    execute o comando que o Marcelo Fernandes postou, pois ele indica quais arquivos fisicos sao utilizados pela base.

    @Junior, eu tive um problema parecido, mas me pareceu um comportamento do SO, pois no meu caso, o SO reiniciou a maquina e quando o SQL subiu havia dois arquivos MDF, um com sinal de ~ na frente, mas inutilizado pelo serviço. Creio que o SO fez esta cópia para evitar um crash no arquivo principal, assim como ocorre em documento do Word por exemplo, que ao se abrir ele cria um arquivo oculto com o mesmo nome com este simbolo na frente.

    segunda-feira, 30 de março de 2015 15:11
  • Aparentemente parece um arquivo temporário gerado, se você for na pasta Temp do windows vai ver diversos arquivos com nomenclatura similar, quando você faz uma copia de uma dado cujo tamanho precise de cache o windows também cria um arquio ~arquivo.extensao

    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    terça-feira, 31 de março de 2015 11:45
  • Desde já agradeço pela ajuda, ainda estou com esse incidente porque estou na duvida se posso ou não deletar esse arquivo e liberar espaço em disco.

    Samuel,

    Como o Marcelo indicou você poderá identificar quais são os arquivos que realmente são utilizados executando a consulta que ele indicou. 

    Outro ponto que pode ajudar você a definir se este arquivo é mesmo utilizado, será verificando a data da última modificação deste arquivo (exceto se este banco for "somente leitura") através do Windows Explorer. Veja na imagem que alguns arquivos .MDF e/ou .LDF não são utilizados com frequência.

    No seu caso, a data da última modificação deve ser muito mais antiga do que nos demais arquivos deste banco. Se for apenas 1 arquivo ".mdf" e outro ".ldf" indicados na consulta do Marcelo, então seu trabalho de identificação será mais fácil.

    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"

    terça-feira, 31 de março de 2015 14:41
  • @Samuel,

    execute o comando que o Marcelo Fernandes postou, pois ele indica quais arquivos fisicos sao utilizados pela base.

    @Junior, eu tive um problema parecido, mas me pareceu um comportamento do SO, pois no meu caso, o SO reiniciou a maquina e quando o SQL subiu havia dois arquivos MDF, um com sinal de ~ na frente, mas inutilizado pelo serviço. Creio que o SO fez esta cópia para evitar um crash no arquivo principal, assim como ocorre em documento do Word por exemplo, que ao se abrir ele cria um arquivo oculto com o mesmo nome com este simbolo na frente.

    Advaldo,

    É isso mesmo, foi um comportamento estranho do Sistema Operacional que acabou impactando no SQL Server.


    Pedro Antonio Galvao Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quarta-feira, 1 de abril de 2015 14:34
    Moderador
  • Samuel,

    Se por ventura você for apagar a base para apagar o arquivio (~), recomendo que vc altere a base para single_User, faça um backup full e log, para depois apagar os arquivos.



    Tiago Neves

    quarta-feira, 1 de abril de 2015 16:07
  • Caso tenha conseguido a solução finalize sua Thread marcando a resposta

    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    domingo, 28 de junho de 2015 14:10