Question

Comment ajouter une nouvelle table à une synchronisation en utilisant mlagent configuré à partir de Sybase Central.Cela pourrait être lié à ce ou ce question.

Lorsque vous effectuez une modification sur une base de données distante comme décrit dans Tutoriel Sybase il ne met pas à jour la base de données consolidée ainsi que le modèle de synchronisation.Lors de la mise à jour du modèle et de l'ajout peut-être d'une nouvelle table complète (ou d'une nouvelle colonne), quelle est la bonne façon de procéder en utilisant mlagent et les tâches distantes configurées depuis Sybase Central ?

Était-ce utile?

La solution

Cela semble¹ fonctionner :

  1. Créez un nouveau nom de schéma distant (par ex.v2.0)
  2. Apportez des modifications à votre base de données consolidée (par ex.CREATE TABLE-instruction)
  3. Mettez à jour le schéma dans votre profil de synchronisation et augmentez peut-être la chaîne de version (sur mon test actuel, cela n'a pas d'importance)
  4. Effectuez un déploiement de votre profil de synchronisation des mises à jour.Vous aurez besoin de mettre à jour ml_columns et ml_tables ainsi que ml_table_scripts, etc. sur votre base de données consolidée correspondant à votre profil de synchronisation de mise à jour.Appliquez donc les modifications.Vous aurez également besoin du SQL de la base de données distante
  5. Créez une tâche distante de mise à niveau incluant le SQL distant créé à l'étape 4 (EXECUTE SQL).Cette tâche doit également modifier le nom du schéma distant
  6. Peut-être répétez votre tâche de synchronisation et déployez les deux : tâche de mise à niveau et tâche de synchronisation.
  7. Devrait être fait

Le plus gros problème est que le script par défaut supprime les tables du côté distant, de sorte qu'une énorme quantité de données peut être transférée après la mise à jour.

¹ J'ai pu le faire fonctionner sur un scénario de test local avec une base de données minimale.

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top