Como liberar espaço em disco em uma unidade que possui arquivo BiztalkMsgBoxDB_log nele

1

Fui solicitado a analisar um problema relacionado a um dos servidores do biztalk. Me pediram para liberar espaço em uma unidade específica, onde eu encontrei o único arquivo BiztalkMsgBoxDB_log.bak está tomando perto de 90% da unidade. Executando a seguinte consulta, descobri que o espaço de log usado é de apenas 1,25%.

EXEC ('DBCC sqlperf (LOGSPACE) COM NO_INFOMSGS')

**Database Name**   **Log Size (MB)**   **Log Space Used (%)**  **Status**
  BizTalkMsgBoxDb     24930.49            1.257622                0

atualmente o Recovery Mode é: FULL e o backup do log de transações foi feito há uma hora.

Eu não tenho idéia de por que o arquivo de log foi criado tão grande. Como posso liberar dados nesta unidade?

    
por gaganHR 08.09.2015 / 11:24

2 respostas

1

Você deve reduzir seu log. Não exclua!

No SQL Server MGMNT Studio, clique com o botão direito do mouse em seu banco de dados, Tarefas > Encolher > Arquivos. Selecione seu log como na imagem abaixo (ou reduza para um tamanho que seja OK para você) e clique em OK.

Talvezvocêqueiradarumaolhadanassuasconfiguraçõesdecrescimentoautomáticodepoisetalvezdefinirumlimite,paragarantirqueissonãoaconteçanofuturo.

Oqueeumaisrecomendoécolocarosarquivosdelogemumdiscoseparado(oupartição,sevocênãopuderadicionardiscosextras).Dessaforma,osarquivosdelogpodemencheraunidadeseminterromperqualqueroutracoisa.(Omesmovaleparaotempdbapropósito).

Seoarquivodelogcontinuarassimapósaexecução,épossívelqueaindahajaumatransaçãobloqueandoaação.Tenteencontrá-locomsp_who2ou sp_whoisactive e veja se você pode pará-lo. Pontos de bônus para não apenas matá-lo.

Verifique se não está preso na replicação em algum lugar. Você pode tentar colocar o banco de dados no modo simples e voltar ao máximo, mas isso deve ser um último recurso. Não se esqueça de verificar seus backups depois!

    
por 12.09.2015 / 23:15
0

Você não poderá realmente excluir o arquivo, presumindo-se que o SQL Server esteja sendo executado, e o arquivo é, na verdade, o arquivo de log de um banco de dados em uso pelo SQL Server. Você identificou o nome como terminando em .bak , que é normalmente reservado para arquivos Backup do SQL Server, e não para arquivos log . Normalmente, a extensão do arquivo de log é .ldf . Se for realmente um arquivo de backup, você poderá excluí-lo; no entanto, se o SQL Server estiver fazendo backups regularmente para esse arquivo, ele será reaparecido na próxima vez em que ocorrer o backup. Você provavelmente não deseja excluir o arquivo de backup, pois pode ser crítico para a recuperação de desastres.

Os Arquivos de Log do SQL Server contêm registros para cada modificação feita no próprio banco de dados. Fazer o backup do log normalmente marcará partes do arquivo para reutilização, portanto, se você olhar para DBCC LOGPERF depois de fazer um backup, poderá se perguntar por que o arquivo de log é "tão grande" quando está apenas em uso. Você provavelmente quer ter certeza sobre o tamanho necessário do arquivo antes de reduzi-lo, pois o SQL Server pode simplesmente aumentar o tamanho do arquivo para a próxima vez que a manutenção for executada no banco de dados. Existem muitos motivos pelos quais o arquivo de log pode crescer e, quando crescer, diminuirá muito o tempo de resposta. Veja esta questão e as respostas para mais detalhes no site dba.stackexchange.com .

    
por 17.12.2015 / 22:37