Para que serve o Arquivo Log no SqlServer ????

28/10/2004

0

Caros Amigos, Estou migrando meus softwares de Paradox p/ SqlServer, portanto, desenvolvi uma tela de importação do Banco Paradox p/ o SqlServer.

Pois Bem, por Exemplo, por eu estar executando estas rotinas constantemente em ambiente de teste o Arquivo MDF esta com 30MB e Arq. LOG esta com [b:22f6f4f4dd]500MB[/b:22f6f4f4dd] , sem brincadeira, por várias vezes o que eu faço, desativo o Arq. MDF apago o LOG e Ativo-o novamente o SQL reclama que não existe o Arq. LOG porém me pergunta se eu quero criar um novo, simplesmente eu digo que sim e continuo a utilizar o Sistema e Banco normalmente, [b:22f6f4f4dd]DAÍ A PERGUNTA ! PARA QUE SERVE O ARQUIVO LOG ???[/b:22f6f4f4dd].

E também estou procurando uma forma, ou ferramente, do SQL enxugar o arquivo LOG, pois eu já tenha clientes utilizando o SQL e quando os mesmos me Enviam Backups a situação não é muito diferente, Me aparecem Arquivos MDF de 15MB e LOG de 80 à 90MB, [b:22f6f4f4dd]Que Loucura é essa ??[/b:22f6f4f4dd] :evil:

Já que eu não vou pedir para os meus Clientes que são leigos na Informática, Mal sabem usar o meu Software, imagine só eu pedir para um usuário desses apagar o arquivo LOG e ele me Apagar o MDF, Ainda não estou ficando Louco :P

Portanto se alguém poder me Tirar essas dúvidas eu agradeceria muito !!
Desde já Muito Obrigado !!

André
Programador Delphi


Andreprogdelphi

Andreprogdelphi

Responder

Posts

28/10/2004

Aroldo Zanela

Colega,

Acho melhor você ler algum material específico para entender o funcionamento do LOG. Para manter o LOG ´enxuto´, basta efetuar backups (via JOB).
Para truncar o LOG (jogar para o limbo), basta:

backup log nome_do_banco with no_log


Isto não vai diminuir o tamanho físico, mas você você pode (mais não deve) utilizar recursos para encolher o banco no EM ou QA.

para monitorar o tamanho dos logs e seu percentual de utilização, use:

dbcc perflog


Aqueles com mais de 30¬ de utilização, devem ser backup(eados), truncados ou redimensionados para melhorar a performance.

Verifique suas rotinas visando não gerar LOG desnecessariamente.


Responder

29/10/2004

Andreprogdelphi

Agradeço a Informação, Más ...

[b:8c092fb9c6]Como posso saber se estou gerando LOG Desnecessariamente.[/b:8c092fb9c6]

Minhas Rotinas São bastate simples.
Estou utilizando DbExpress, ou seja, Com um Comp. de Conexão, Provider, ClientDataSet e DataSource.

E um While bem simples ...

while not TTable.eof do
begin
TClientDataSet.Insert;
campo = campo;
campo = campo;
campo = campo;
TClientDataSet.Post;

TTable.next;
end;

e no evento BeforePost do TClientDataSet tem o comando
ApplyUpdates(0);

É Apenas Isso

[b:8c092fb9c6]Será que estou gerando LOG Desnecessariamente, nesta simples rotina ??[/b:8c092fb9c6]

Desde já Agradeço !!


Responder

05/11/2004

Felipe_cduarte

Fala Andre blz ??

Bom cara, o arquivo de log é usado pra armazenar todos as operações realizadas no BD. Se você deseja visualizá-lo, terá que usar softwares como o ApexSQL ( www.apexsql.com ) que é mto bom ou o Log Explorer. Se bem eu entendi, vc está fazendo a conversão do BD, então deve ter informações de vários anos de seu cliente. O log deve estar deste tamanho por causa dos varios inserts que são realizados... mas quando vc finalizar a conversão, na hora q o cliente for realmente usar, o log nao crescerá desta forma, pode ficar trankilo :P ... sobre a diminuiçao do log, vc pode pesquisar até aki no forum mesmo, onde o assunto já foi discutido.

Espero ter ajudado

[]´s


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar