Précédent   Forum du club des développeurs et IT Pro > Bases de données > Sybase > Réplications
Réplications Forum d'entraide sur toutes les formes de réplication de Sybase : Replication Server, replicator, SQL remote, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 27/07/2006, 10h42   #1
benoit17
Invité de passage
 
Inscription : juillet 2006
Messages : 1
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 1
Points : 0
Points : 0
Par défaut [RS] Pb Replication Server

Bonjour,
Je cherche un moyen de purger la base log du serveur de réplication sybase, sachant que les diverses commandes du type :
dump tran with no log ou dump tran with truncate only ne fonctionnent pas.

C'est une version 12.5

Merci.
benoit17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2006, 11h08   #2
mpeppler
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 307
Détails du profil
Informations personnelles :
Âge : 53

Informations forums :
Inscription : janvier 2006
Messages : 1 307
Points : 1 643
Points : 1 643
Envoyer un message via AIM à mpeppler
Si la log ne se purge pas c'est vraisemblablement qu'une transaction est encore ouverte.

On peut voir l'état avec:

Code :
1
2
 
SELECT * FROM master..syslogshold
ce qui donne quelque chose comme ceci:

Code :
1
2
3
4
5
6
 
 dbid   reserved    spid   page        xactid           masterxactid     starttime           name                                                    xloid
 ------ ----------- ------ ----------- ---------------- ---------------- ------------------- ------------------------------------------------------------------- -----------
      8           0      0      198787   0x000000000000   0x000000000000 Jul 27 2006 12:54AM $replication_truncation_point                                                 0
      4           0    111     2629258   0x00281e8a0000   0x000000000000 Jul 27 2006 11:03AM $upd                                                            222
      4           0      0     2629190   0x000000000000   0x000000000000 Jul 27 2006 11:03AM $replication_truncation_point                                                 0
On notera la transaction ouverte du SPID 111.
Si la replication est enclenchée il peut aussi y avoir une très grande opération (p.ex. un UPDATE avec une clause WHERE peu restrictive). Cette opération est exécutée comme une seule transaction, mais doit être répliquée ligne par ligne (cad un UPDATE pour chaque ligne modifiée dans la base source). Ce genre de chose peu s'exécuter très lentement et faire en sorte que la log de la base source se remplisse...

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2006, 10h47   #3
dbafranck
Membre du Club
 
Inscription : décembre 2005
Messages : 48
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 48
Points : 48
Points : 48
Si vous ne souhaitez pas répliquer le contenu du log (par exemple si vous avez loadé votre primary database sur un ASE ne faisant par partie d'un Sytème de réplication), il faut supprimer le second point de troncature du log (celui du Replication Server).
Attention, vous en pourrez plus répliquer les données contenues dans le log.

dbcc settrunc("ltm","ignore") permet de désactiver le second point de troncature.
dbafranck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2006, 17h07   #4
fadace
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 830
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 42
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 830
Points : 13 968
Points : 13 968
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
Je rajouterai même :
  • dbcc gettrunc() pour voir si le 2e point de troncature existe (sinon l'adresse retournée est 0)
  • Il y a toujours moyen de remettre le pointeur avec un dbcc settrunc('ltm','valid')... mais là, il faut savoir ou l'on met ses pieds
__________________
Sr DBA Oracle / Sybase / MS-SQL / MySQL / DB2 / Postgresql / Informix
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2006, 17h14   #5
arona
Membre habitué
 
Inscription : mars 2006
Messages : 293
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 293
Points : 140
Points : 140
On peut aussi , mais on pert une transaction, faire un truncate de la table rslastcommit ....
Bourrin peut être mais efficasse ...
arona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/09/2012, 18h12   #6
sdelobel
Invité de passage
 
Administrateur de base de données
Inscription : juillet 2011
Messages : 3
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : juillet 2011
Messages : 3
Points : 4
Points : 4
"dbcc gettrunc" sans les paranthèses
sdelobel est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 17h06.


 
 
 
 
Partenaires

Hébergement Web