Précédent   Forum des professionnels en informatique > 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 Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/07/2006, 10h42   #1
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
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
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
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
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

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

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
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 / DB2 / Informix / Postgresql
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
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
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h08.


 
 
 
 
Partenaires

Hébergement Web