OVH Cloud OVH Cloud

problème transaction log -> n'arrête pas de grandir...

6 réponses
Avatar
Vial Raphael
Hello,
j'ai un problème sur une base SQL : le transaction log devient de plus en
plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB) il
suffit de 3-4 jours pour ce fichier .ldf soit plein...
Pourriez-vous me dire de quoi cela pourrait provenir ou ...?

Merci d'avance

Rafi

6 réponses

Avatar
Christianbt
Salut,
Une transaction non terminée... Un job ou une alerte mal paramètrée...
Il faut tronquer le journal en finissant la dernière transaction active, à
mon avis :
faire un backup complet de la base puis :
backup log with truncate_only
Bon courage


"Vial Raphael" a écrit :

Hello,
j'ai un problème sur une base SQL : le transaction log devient de plus en
plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB) il
suffit de 3-4 jours pour ce fichier .ldf soit plein...
Pourriez-vous me dire de quoi cela pourrait provenir ou ...?

Merci d'avance

Rafi





Avatar
Fred BROUARD
a lire :
http://sqlpro.developpez.com/cours/sqlserver/log/

A +

Vial Raphael a écrit:
Hello,
j'ai un problème sur une base SQL : le transaction log devient de plus en
plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB) il
suffit de 3-4 jours pour ce fichier .ldf soit plein...
Pourriez-vous me dire de quoi cela pourrait provenir ou ...?

Merci d'avance

Rafi





--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Avatar
Michel PRIORI
Le fichier de log est purgé à chaque "backup log".
S'il grossi comme ça en qq jours c'est que vraissemblablement tu ne fais pas
de backup du log.
Dans ton cas, et tant que tu ne veux pas en faire, le mieux est de regler ta
base en mode "Simple" (entreprise ménagère : Clic Droit sur la base >
propriété > option > modele de récupération)
et là tu n'aura plus de pb avec la croissance ton log.

Pour reduire la taille du log :
le plus simple arreter (proprement) le service SQL. Renommer le fichier en
*.old. et Redemarrer le service. Un nouveau fichierr log sera créé.



"Vial Raphael" a écrit :

Hello,
j'ai un problème sur une base SQL : le transaction log devient de plus en
plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB) il
suffit de 3-4 jours pour ce fichier .ldf soit plein...
Pourriez-vous me dire de quoi cela pourrait provenir ou ...?

Merci d'avance

Rafi





Avatar
hch
Je rajoute un detail si vous permettez ,

le moyen le plus propre pour garder un journal avec une taille normale est
de le sauvegrder regulierment car la sauvegarde du log s'accompagne d'une
troncature des parties inactives du log
il faut donc demarrer une strategie regulier de sauvegardes une complete et
plusieurs sauvegardes des logs (la frequence depend de votre environnement
transactionnel ou pas )

Ensuite on peut effectivement avoir recours a Backup log database with
truncate only cela purge le journal mais attention faites juste apres une
sauvegrde complete car en cas de pb vous n'avez plus un historique complet
pour restaurer .

Quant a l'option de base de données Mode de recuperation SIMPLE
effectiviement ceci permet de ne pas journaliser et donc on n'a plus de pb de
taille du log mais attention en production c'est une option a eviter surtout
si votre environnement n'est pas que de la lecture intensive !!

hch
"Vial Raphael" a écrit :

Hello,
j'ai un problème sur une base SQL : le transaction log devient de plus en
plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB) il
suffit de 3-4 jours pour ce fichier .ldf soit plein...
Pourriez-vous me dire de quoi cela pourrait provenir ou ...?

Merci d'avance

Rafi





Avatar
Med Bouchenafa
<<..Quant a l'option de base de données Mode de recuperation SIMPLE
effectiviement ceci permet de ne pas journaliser et donc on n'a plus de pb
de
taille du log ...>>

Ceci n'est pas tout à fait exact.
A part certaines opérations, SQL Server journalise TOUJOURS quelque soit le
mode de récupération.
Le mode SIMPLE permet au journal d'être vidé à chaque checkpoint.

--
Bien cordialement
Med Bouchenafa

"hch" a écrit dans le message de news:

Je rajoute un detail si vous permettez ,

le moyen le plus propre pour garder un journal avec une taille normale est
de le sauvegrder regulierment car la sauvegarde du log s'accompagne d'une
troncature des parties inactives du log
il faut donc demarrer une strategie regulier de sauvegardes une complete
et
plusieurs sauvegardes des logs (la frequence depend de votre environnement
transactionnel ou pas )

Ensuite on peut effectivement avoir recours a Backup log database with
truncate only cela purge le journal mais attention faites juste apres une
sauvegrde complete car en cas de pb vous n'avez plus un historique complet
pour restaurer .

Quant a l'option de base de données Mode de recuperation SIMPLE
effectiviement ceci permet de ne pas journaliser et donc on n'a plus de pb
de
taille du log mais attention en production c'est une option a eviter
surtout
si votre environnement n'est pas que de la lecture intensive !!

hch
"Vial Raphael" a écrit :

Hello,
j'ai un problème sur une base SQL : le transaction log devient de plus en
plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB)
il
suffit de 3-4 jours pour ce fichier .ldf soit plein...
Pourriez-vous me dire de quoi cela pourrait provenir ou ...?

Merci d'avance

Rafi







Avatar
hch
merci pour la precision , effectivement on ne peut pas empecher sql de
journaliser il journalise tout independamment du mode , en mode simple il
vide le journal et donc on n'a plus d'historique et donc plus la possiblité
de restaurer .......
On resoud le probleme de taille du log mais a mon avis ce n'est pas la
meilleure solution....

merci


"Med Bouchenafa" a écrit :

<<..Quant a l'option de base de données Mode de recuperation SIMPLE
effectiviement ceci permet de ne pas journaliser et donc on n'a plus de pb
de
taille du log ...>>

Ceci n'est pas tout à fait exact.
A part certaines opérations, SQL Server journalise TOUJOURS quelque soit le
mode de récupération.
Le mode SIMPLE permet au journal d'être vidé à chaque checkpoint.

--
Bien cordialement
Med Bouchenafa

"hch" a écrit dans le message de news:

> Je rajoute un detail si vous permettez ,
>
> le moyen le plus propre pour garder un journal avec une taille normale est
> de le sauvegrder regulierment car la sauvegarde du log s'accompagne d'une
> troncature des parties inactives du log
> il faut donc demarrer une strategie regulier de sauvegardes une complete
> et
> plusieurs sauvegardes des logs (la frequence depend de votre environnement
> transactionnel ou pas )
>
> Ensuite on peut effectivement avoir recours a Backup log database with
> truncate only cela purge le journal mais attention faites juste apres une
> sauvegrde complete car en cas de pb vous n'avez plus un historique complet
> pour restaurer .
>
> Quant a l'option de base de données Mode de recuperation SIMPLE
> effectiviement ceci permet de ne pas journaliser et donc on n'a plus de pb
> de
> taille du log mais attention en production c'est une option a eviter
> surtout
> si votre environnement n'est pas que de la lecture intensive !!
>
> hch
> "Vial Raphael" a écrit :
>
>> Hello,
>> j'ai un problème sur une base SQL : le transaction log devient de plus en
>> plus grand et même si je l'autorise beaucoup plus de place (envir. 500MB)
>> il
>> suffit de 3-4 jours pour ce fichier .ldf soit plein...
>> Pourriez-vous me dire de quoi cela pourrait provenir ou ...?
>>
>> Merci d'avance
>>
>> Rafi
>>
>>
>>