Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Realisation script purge metadata

3 réponses
Avatar
Dge
Bonjour à tous,

Devant realiser un script de purge des metadata (lors de replication
fusion) car la base gonfle enormement (1.5 Go) et est executé sur msde
ne gerant pas plus de 2go de base (lors de replication fusion), j'ai
fais un projet d'execution mais soucis :

schema :
verif que toutes les machines clientes soient sur le reseau
desactivation publication
truncate
sp_mergecleanupmetada
activation publication

Mais le soucis commence des le debut

j'arrive bien à recuperer la liste des abonnés en regardant dans
sysmergesubscriptions mais

je n'arrive pas à recuperer et donc analyser le retour de :
exec master..xp_cmdshell 'ping ' + abonnes_cursor

quelqu'un sait il faire ca proprement (le ping ou la recuperation du
resultat de l'exec) ?

Merci enormement par avance

--
Dge

3 réponses

Avatar
Med Bouchenafa
Le fait qu'une machine soit disponible sur le réseau ne signifie pas
obligatoirement que le SQL Server qu'elle heberge soit démarré.
Il se peut que la machine tourne et que son SQL Server soit arrêté.
Le mieux est d'utiliser l'utilitaire ODBCPING.EXE qui se trouve dans le
répertoire x86Binn du CD-ROM de SQL Server 2000.
Voir odbcping dans Aide En Ligne

D'autre part, quelle commande penses-tu utiliser pour désactiver une
publication ?


--
Bien cordialement
Med Bouchenafa

"Dge" a écrit dans le message de news:
42233d08$0$26095$
Bonjour à tous,

Devant realiser un script de purge des metadata (lors de replication
fusion) car la base gonfle enormement (1.5 Go) et est executé sur msde ne
gerant pas plus de 2go de base (lors de replication fusion), j'ai fais un
projet d'execution mais soucis :

schema :
verif que toutes les machines clientes soient sur le reseau
desactivation publication
truncate
sp_mergecleanupmetada
activation publication

Mais le soucis commence des le debut

j'arrive bien à recuperer la liste des abonnés en regardant dans
sysmergesubscriptions mais

je n'arrive pas à recuperer et donc analyser le retour de :
exec master..xp_cmdshell 'ping ' + abonnes_cursor

quelqu'un sait il faire ca proprement (le ping ou la recuperation du
resultat de l'exec) ?

Merci enormement par avance

--
Dge


Avatar
Dge
Med Bouchenafa a écrit :
D'autre part, quelle commande penses-tu utiliser pour désactiver une
publication ?



Betement je pensais faire :

ping et si ok, suivre la doc qui conseille :


(ATTENTION :
ceci est en cours de dev, donc un melange de source de la doc officielle
et d'ancien script, donc en gros rien ne marche mais l'on peut voir la
logique du truc
Evidemment tout commentaire est le bienvenue)



// Desactivation publication 'midddlecaissefusion'

exec (@db_name_merge +'..sp_changemergepublication @publication '+@db_publi_name +'
, @property = ''status'', @value = ''inactive''')


// sur chaque caisse

truncate table metadata msmerge_contents , msmerge_genhistory ,
msmerge_tombstone

// Execution de sp_cleanupmetadata

EXEC central..sp_mergecleanupmetadata @publication = 'dynpart_pubn',
@reinitialize_subscriber = 'false'

// Sur chaque caisse le même truncate (Osql)

EXEC central..sp_changemergepublication @publication 'midddlecaissefusion', @property = 'status', @value = 'inactive'

// Après l'arrêt de toutes les fusions en mode continu, exécutez les
procédures
// stockées suivantes. Ces procédures stockées exécutent le nettoyage des
// métadonnées puis réactivent les fusions en mode continu.

EXEC central..sp_mergecleanupmetadata @publication = 'dynpart_pubn',
@reinitialize_subscriber = 'false'

// On réactive

EXEC central..sp_changemergepublication @publication = 'dynpart_pubn',
@property = 'status', @value = 'active'
Avatar
Med Bouchenafa
Je ne vois pas où tu as trouvé la description de cette procédure de
nettoyage.
Je ne sais pas non plus quelle version de SQL Server tu utilises
Microsoft recommende de n'utiliser sp_mergecleanupmetadata qu'avec les
versions antérieures au SP1.
Avec les versions postérieures au SP1, il suffit de changer la période de
retention de la publication et le vidage se fait automatiquement au terme de
cette période de rétention


--
Bien cordialement
Med Bouchenafa



"Dge" a écrit dans le message de news:
42242b96$0$26153$
Med Bouchenafa a écrit :
D'autre part, quelle commande penses-tu utiliser pour désactiver une
publication ?



Betement je pensais faire :

ping et si ok, suivre la doc qui conseille :


(ATTENTION :
ceci est en cours de dev, donc un melange de source de la doc officielle
et d'ancien script, donc en gros rien ne marche mais l'on peut voir la
logique du truc
Evidemment tout commentaire est le bienvenue)



// Desactivation publication 'midddlecaissefusion'

exec (@db_name_merge +'..sp_changemergepublication @publication > '+@db_publi_name +'
, @property = ''status'', @value = ''inactive''')


// sur chaque caisse

truncate table metadata msmerge_contents , msmerge_genhistory ,
msmerge_tombstone

// Execution de sp_cleanupmetadata

EXEC central..sp_mergecleanupmetadata @publication = 'dynpart_pubn',
@reinitialize_subscriber = 'false'

// Sur chaque caisse le même truncate (Osql)

EXEC central..sp_changemergepublication @publication > 'midddlecaissefusion', @property = 'status', @value = 'inactive'

// Après l'arrêt de toutes les fusions en mode continu, exécutez les
procédures
// stockées suivantes. Ces procédures stockées exécutent le nettoyage des
// métadonnées puis réactivent les fusions en mode continu.

EXEC central..sp_mergecleanupmetadata @publication = 'dynpart_pubn',
@reinitialize_subscriber = 'false'

// On réactive

EXEC central..sp_changemergepublication @publication = 'dynpart_pubn',
@property = 'status', @value = 'active'