Migration de Sybase Replication Server 12.0 vers la version 12.6 avec fichiers de ressources

Logo

Introduction

Cet article technique s’attarde sur la migration d’un système de réplication Sybase de Sybase Replication Server 12.0 vers Sybase Replication Server 12.6.

Dans le contexte de cette migration, il s’agit d’une simple réplication en mode standby d’une base de données ; des routes ne sont pas mises en œuvre et les anciennes fonctionnalités du LTM (Log Transfer Manager) de RS 11.0/11.5 ne sont pas utilisées.

Autre information importante, dans le contexte de cette migration, aucun RSM (Replication Server Manager) n’est installé.

Toutes les étapes de la migration sont décrites et la montée de version s’effectue avec des fichiers de ressources.

Architecture

Schéma global de l’architecture

Le schéma global de l’architecture est donné ci-dessous :

Schéma de la réplication
  • DBA_T1_REP est un serveur de réplication Sybase version 12.0 et ce dernier va être mis à jour à la version 12.6.
  • La base de données système de la réplication RSSD (Replication Server System Database) est hébergée sur le serveur Sybase ASE RSD_T1_ASE.
  • La base de données primaire pubs est hébergée dans le serveur Sybase DBA_T1_ASE et la base de données pubs standby est hébergée dans le serveur DBA_T2_ASE.

Architecture des binaires Replication Server 12.0 et Replication Server 12.6

Dans l’architecture de la migration, la distribution de Replication Server 12.0 est installée dans le répertoire Software/sybase/repsrv-12.0 et la distribution de Replication Server 12.6 est installée dans le répertoire /Software/sybase/repsrv-12.6 :

Distribution Replication Server 12.0 : /Software/sybase/repsrv-12.0

Distribution Replication Server 12.6 : /Software/sybase/repsrv-12.6

Le fichier d’environnement DBA_T1_REP.rep du serveur de réplication DBA_T1_REP

Le démarrage du serveur de réplication DBA_T1_REP est effectué en appliquant les variables d’environnement $SYBASE, $SYBASE_REP, $SYBASE_OCS, $PATH, $LD_LIBRARY_PATH, etc. grâce au fichier DBA_T1_REP.rep localisé dans le répertoire $DBA/etc (/Software/sybase/dba/etc).

Pour l’environnement Sybase Replication Server 12.0, le fichier d’environnement DBA_T1_REP.rep du serveur de réplication DBA_T1_REP est le suivant :

$DBA/etc/DBA_T1_REP.rep
#!/bin/ksh
## Configuration File for DBA_T1_REP RepServer

export DBENV=UAT
export DSQUERY=$REPSERVERNAME
export PS1="$DSQUERY > "
export SYBASE=/Software/sybase/repsrv-12.0
export SYBASE_REP=REP-12_0
export SYBASE_RSM=RSM-12_0
export SYBASE_OCS=OCS-12_0
export CFG=$DBA/$REPSERVERNAME/cfg
export SCRIPT=$DBA/$REPSERVERNAME/cfg/script
export DMP=$DBA/$REPSERVERNAME/dmp
export RUN=$DBA/$REPSERVERNAME/run
export LOG=$DBA/$REPSERVERNAME/log

export PATH=$PATH:$SYBASE/$SYBASE_REP/bin:$SYBASE/$SYBASE_REP/install:$SYBASE/$SYBASE_OCS/bin:
$SYBASE/$SYBASE_OCS/install:$SYBASE/$SYBASE_RSM/bin:$SYBASE/$SYBASE_RSM/install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SYBASE/$SYBASE_REP/lib:$SYBASE/$SYBASE_OCS/lib:$SYBASE/$SYBASE_RSM/lib

Avec ce fichier d’environnement, les principales variables ci-dessous sont appliquées :

SYBASE=/Software/sybase/repsrv-12.0
SYBASE_REP=REP-12_0
SYBASE_RSM=RSM-12_0
SYBASE_OCS=OCS-12_0
PATH=/usr/xpg4/bin:/usr/bin:/usr/ucb:/etc:/usr/ccs/bin:/usr/sbin:.:/Software/sybase/dba/bin:
/Software/sybase/repsrv-12.0/REP-12_0/bin:/Software/sybase/repsrv-12.0/REP-12_0/install:
/Software/sybase/repsrv-12.0/OCS-12_0/bin:/Software/sybase/repsrv-12.0/OCS-12_0/install:
/Software/sybase/repsrv-12.0/RSM-12_0/bin:/Software/sybase/repsrv-12.0/RSM-12_0/install
LD_LIBRARY_PATH=:/Software/sybase/repsrv-12.0/REP-12_0/lib:/Software/sybase/repsrv-12.0/OCS-12_0/lib:
/Software/sybase/repsrv-12.0/RSM-12_0/lib

Préparation du fichier d’environnement du serveur de réplication DBA_T1_REP pour Sybase Replication Server 12.6

En vue de la migration vers Replication Server 12.6, un fichier d’environnement DBA_T1_REP.rep.126 dans $DBA/etc va être préparé pour la prise en charge de l’environnement Sybase Replication Server 12.6.

Dans l’environnement Sybase Replication Server 12.6 :

  • $SYBASE_REP=REP-12_6
  • $SYBASE_RSM=RSM-12_6
  • $SYBASE_OCS=OCS-12_5
$DBA/etc/DBA_T1_REP.rep.126
#!/bin/ksh
## Configuration File for DBA_T1_REP RepServer

export DBENV=UAT
export DSQUERY=$REPSERVERNAME
export PS1="$DSQUERY > "
export SYBASE=/Software/sybase/repsrv-12.6
export SYBASE_REP=REP-12_6
export SYBASE_RSM=RSM-12_6
export SYBASE_OCS=OCS-12_5
export CFG=$DBA/$REPSERVERNAME/cfg
export SCRIPT=$DBA/$REPSERVERNAME/cfg/script
export DMP=$DBA/$REPSERVERNAME/dmp
export RUN=$DBA/$REPSERVERNAME/run
export LOG=$DBA/$REPSERVERNAME/log

export PATH=$PATH:$SYBASE/$SYBASE_REP/bin:$SYBASE/$SYBASE_REP/install:$SYBASE/$SYBASE_OCS/bin:
$SYBASE/$SYBASE_OCS/install:$SYBASE/$SYBASE_RSM/bin:$SYBASE/$SYBASE_RSM/install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SYBASE/$SYBASE_REP/lib:$SYBASE/$SYBASE_OCS/lib:$SYBASE/$SYBASE_RSM/lib

Avec ce fichier d’environnement, les principales variables ci-dessous sont appliquées :

SYBASE=/Software/sybase/repsrv-12.6
SYBASE_REP=REP-12_6
SYBASE_RSM=RSM-12_6
SYBASE_OCS=OCS-12_5
PATH=/usr/xpg4/bin:/usr/bin:/usr/ucb:/etc:/usr/ccs/bin:/usr/sbin:.:/Software/sybase/dba/bin:
/Software/sybase/repsrv-12.6/REP-12_6/bin:/Software/sybase/repsrv-12.6/REP-12_6/install:
/Software/sybase/repsrv-12.6/OCS-12_5/bin:/Software/sybase/repsrv-12.6/OCS-12_5/install:
/Software/sybase/repsrv-12.6/RSM-12_6/bin:/Software/sybase/repsrv-12.6/RSM-12_6/install
LD_LIBRARY_PATH=:/Software/sybase/repsrv-12.6/REP-12_6/lib:/Software/sybase/repsrv-12.6/OCS-12_5/lib:
/Software/sybase/repsrv-12.6/RSM-12_6/lib

Principales étapes de la migration

Les principales étapes de la migration sont résumées ci-dessous et chacune de ces étapes sera décrite dans les paragraphes qui suivent :

  • Étape 1 : Migration des serveurs RSM (non mise en œuvre ici)
  • Étape 2 : Migration de la base de données système de Replication Server RSSD
  • Étape 3 : Migration des bases de données utilisateur définies dans le système de réplication (bases de données primaires, répliquées ou standby)
  • Étape 4 : Migration des LTMs (Log transfer Manager) vers les Agents de réplication (non mise en œuvre ici car l’utilisation des agents de réplication est déjà effective)
  • Étape 5 : Redémarrage de Replication Server
  • Étape 6 : Décision de l’application effective de la nouvelle version 12.6 pour le site de réplication.

Préparation de la migration (validation des souscriptions avec rs_helpsub)

Avant d’effectuer la migration, toutes les souscriptions doivent être valides.

Si des souscriptions ne sont pas valides avant la migration, la montée de version échoue et Replication Server ne peut être redémarré.

La procédure stockée système rs_helpsub de la base de données système de la réplication RSSD permet de vérifier la validité des souscriptions.

exec rs_helpsub [subscription_name
  [, replication_definition
  [, data_server, database]]]

Dans le contexte de cet article, il n’y a pas de souscriptions car il s’agit d’une réplication standby simple. Voici toutefois comment vérifier que les souscriptions sont valides :

RSD_T1_ASE > exec rs_helpsub
RSD_T1_ASE > go


** This Site is 'SYDNEY_RS' **

                                                                        Status at
Subscription Name         Rep. Def. Name         Replicate DS.DB         A/C           RRS              PRS
-----------------         ---------------        ----------------        ---         --------         ------
titles_sub                 titles_rep            SYDNEY_DS.pubs2         0           Valid            Unknown

C’est la colonne "Status at RRS" qui doit afficher l’état Valid pour toutes les souscriptions.

Si une souscription présente l’état Defined par exemple, il s’agit d’une souscription en mode matérialisation définie mais non encore valide car les commandes activate subscription et validate subscription n’ont pas encore été déclenchées.

Il est impératif que toutes les souscriptions soient valides.

Migration vers Sybase Replication Server 12.6

Dans notre article, seules les étapes 2, 3, 5 et 6 sont nécessaires car il n’y a pas de serveurs RSM (Replication Server Manager) et il n’y a pas de LTMs dans le système (Log Transfer Manager)

Migration de la base de données système RSSD (DBA_T1_REP_RSSD)

Pour migrer la base de données système RSSD vers la version 12.6, se connecter avec le user sybase en prenant l’environnement Sybase Replication Server 12.6 grâce au fichier DBA_T1_REP.rep.126 dans le répertoire $DBA/etc préparé précédemment.

Préparation du fichier de ressources upgr_DBA_T1_REP.rs pour la migration de la base RSSD

Un fichier template de ressources upgr.rs pour la migration d’une base RSSD est fourni en standard dans la distribution Replication Server 12.6 dans le répertoire $SYBASE/$SYBASE_REP/init/rs.

(dans le cas pratique de cette documentation : /Software/sybase/reprsrv-12.6/REP-12_6/init/rs).

Il suffit de copier ce fichier upgr.rs et de personnaliser cette copie pour la migration de la base RSSD du serveur de réplication DBA_T1_REP. Le fichier ressource est appelé upgr_DBA_T1_REP.rs et est installé dans le répertoire /Software/sybase/repsrv-12.6/REP-12_6/init.rs.

Sections du fichier upgr_DBA_T1_REP.rs

Dans le fichier de ressources, les paramètres sybinit.release_directory, sybinit.product et rs.rs_operation doivent être impérativement renseignés :

upgr_DBA_T1_REP.rs
sybinit.release_directory: /Software/sybase/repsrv-12.6
sybinit.product: rs
rs.rs_operation: rs_upgrade
Paramètre Description
sybinit.release_directory Répertoire d’installation de la distribution Replication Server 12.6
sybinit.product Produit à installer (rs pour Replication Server)
rs.rs_operation Précise si il s’agit d’une installation (rs_install), d’une migration vers une version supérieure (rs_upgrade) ou d’une migration vers une version inférieure (rs_downgrade) d’un serveur de réplication.

La section REPLICATION SERVER INFORMATION précise les paramètres du serveur de réplication impliqué dans la migration :

Paramètre Description
rs.rs_name Nom du serveur de réplication DBA_T1_REP
rs.rs_rs_sa_user Login sa du serveur de réplication
rs.rs_rs_sa_pass Mot de passe du login sa du serveur de réplication

La section REPLICATION SERVER SYSTEM DATABASE INFORMATION précise les paramètres de la base système du serveur de réplication (RSSD) à migrer :

upgr_DBA_T1_REP.rs
# REPLICATION SERVER SYSTEM DATABASE INFORMAITON
rs.rs_rssd_sqlsrvr: RSD_T1_ASE
rs.rs_rssd_db: DBA_T1_REP_RSSD
rs.rs_rssd_sa_login: USE_DEFAULT
rs.rs_rssd_sa_pass: *****************
Paramètre Description
rs.rs_rssd_sqlsrvr Nom du serveur ASE hébergeant la base RSSD
rs.rs_rssd_db Nom de la base de données RSSD
rs.rs_rssd_sa_login Login à utiliser ayant le rôle sa_role sur le serveur hébergeant la base RSSD
rs.rs_rssd_sa_pass Mot de passe du login ayant le rôle sa_role sur le serveur hébergeant la base RSSD

La section LOG TRANSFER INFORMATION précise les paramètres si de la technologie LTM (Log Transfer Manager, ASE 11.x et RS 11.x) est mise en œuvre, ce qui n’est pas le cas ici (rs.rs_requires_ltm: no). Il n’est pas nécessaire de renseigner cette section.

Exécution du fichier de ressources upgr_DBA_T1_REP.rs

Après personnalisation du fichier de ressource upgr_DBA_T1_REP.rs, la migration de la base RSSD DBA_T1_REP_RSSD du serveur de réplication DBA_T1_REP est déclenché avec le binaire rs_init dans le répertoire $SYBASE/$SYBASE_REP/install (/Software/sybase/repsrv-12.6/REP-12_6/install dans le contexte de cet article).

rs_init [-a]
    [-c charset]
    [-e]
    [-h]
    [-l language]
    [-log log_file]
    [-r resource_file]
    [-s release_directory]
    [-v]

L’option -r permet de donner un fichier de ressources au binaire rs_init et évite ainsi l’utilisation graphique du binaire rs_init.

Pour lancer la migration de la base RSSD du serveur de réplication DBA_T1_REP avec le binaire rs_init en utilisant le fichier de ressource /Software/sybase/repsrv-12.6/REP-12_6/install/upgr_DBA_T1_REP.rs

export SYBASE=/Software/sybase/repsrv-12.6
export SYBASE_REP=REP-12_6
export SYBASE_OCS=OCS-12_5

PATH=$SYBASE/$SYBASE_REP/bin:$SYBASE/$SYBASE_OCS/bin:$PATH
export PATH
LD_LIBRARY_PATH=$SYBASE/$SYBASE_REP/lib:$SYBASE/$SYBASE_OCS/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$SYBASE/$SYBASE_REP/install/rs_init -r/$SYBASE/$SYBASE_REP/init/rs/upgr_DBA_T1_REP.rs
          -log $SYBASE/$SYBASE_REP/init/rs/upgr_DBA_T1_REP.log

Le fichier de log de la migration de la base RSSD vers la version 12.6 est donné à l’annexe 1.

Tâches effectuées durant la migration de la base RSSD.

Les tâches effectuées durant la migration de la base RSSD sont les suivantes :

  • arrêt (shutdown) du serveur de réplication DBA_T1_REP
  • migration du schéma de la base de données RSSD DBA_T1_REP_RSSD avec le script rsupgr.sql localisé dans le répertoire $SYBASE/$SYBASE_REP/upgrade (/Software/sybase/resprv-12.6/upgrade)
  • recréation des procédures stockées Replication Server 12.6 avec le script rsprocs_ase.sql localisé dans le répertoire $SYBASE/$SYBASE_REP/scripts (/Software/sybase/resprv-12.6/scripts)

La migration s’est déroulée avec succès si les messages ci-dessous apparaissent à la fin du fichier de log :

Upgraded from '12.0 to '12.6.0'..
... Task succeeded: upgrade the RSSD.
Configuration completed successfully.
Exiting.

Migration des bases de données utilisateur définies dans le système de réplication

Toutes les bases de données utilisateur définies dans le système de réplication (hormis la base RSSD) doivent être également mises à jour pour la montée de version vers Sybase Replication Server 12.6. Dans notre cas pratique, nous n’avons que deux bases de données définies : la base pubs dans le serveur primaire DBA_T1_ASE et la base pubs standby dans le serveur secondaire DBA_T2_ASE.

Pour simplifier, seule la migration de la base pubs du serveur primaire DBA_T1_ASE avec un fichier de ressources est présentée. Cette migration doit être lancée pour toutes les bases de données utilisateur.

Utilisation de rs_helpdb pour retrouver les bases de données définies dans la réplication

La procédure stockée système rs_helpdb de la base RSSD permet de retrouver les bases de données utilisateur définies dans le système de réplication,

RSD_T1_ASE > exec rs_helpdb
RSD_T1_ASE > go

dsname         dbname             dbid     controlling_prs     errorclass
------         ------             ----     ---------------     ----------
RSD_T1_ASE     DBA_T1_REP_RSSD    101      DBA_T1_REP          rs_sqlserver_error_class
L_DBA_T2_ASE   l_pubs             102      DBA_T1_REP          No entry in rs_classes
DBA_T1_ASE     pubs               105      DBA_T1_REP          rs_sqlserver_error_class
DBA_T2_ASE     pubs               107      DBA_T1_REP          rs_sqlserver_error_class

Bien entendu il ne faut pas prendre en compte les connexions logiques dans le résultat de la commande rs_helpdb (L_DBA_T2_ASE, l_pubs dans notre cas).

Préparation du fichier de ressources upgrdb_DBA_T1_ASE_pubs.rs pour la migration de la base primaire pubs (DBA_T1_ASE)

Un fichier template de ressources upgrdb.rs pour la migration d’une base utilisateur est fourni en standard dans la distribution Replication Server dans le répertoire $SYBASE/$SYBASE_REP/init/rs

(dans le cas pratique de cette documentation : /Software/sybase/reprsrv-12.6/REP-12_6/init/rs).

Il suffit de copier ce fichier upgrdb.rs et de personnaliser cette copie pour la migration de la base pubs du serveur primaire DBA_T1_ASE. Le fichier ressource est appelé upgrdb_DBA_T1_ASE_pubs.rs et est installé dans le répertoire /Software/sybase/repsrv-12.6/REP-12_6/init.rs.

Sections du fichier upgrdb_DBA_T1_ASE_pubs.rs

Dans le fichier de ressources, les paramètres sybinit.release_directory, sybinit.product et rs.rs_operation doivent être impérativement renseignés :

upgrdb_DBA_T1_ASE_pubs.rs
sybinit.release_directory: /Software/sybase/repsrv-12.6
sybinit.product: rs
rs.rs_operation: rs_upgrade_db
Paramètre Description
sybinit.release_directory Répertoire d’installation de la distribution Replication Server 12.6
sybinit.product Produit à installer (rs pour Replication Server)
rs.rs_operation Précise si il s’agit d’une installation (rs_install), d’une migration vers une version supérieure (rs_upgrade) ou d’une migration vers une version inférieure (rs_downgrade) d’un système de réplication, ou bien encore d’une migration d’une base de données utilisateur (rs_upgrade_db rs_upgrade_db

La section DATABASE INFORMATION précise les paramètres de la base de données utilisateur à migrer :

upgrdb_DBA_T1_ASE_pubs.rs
rs.rs_ds_name: DBA_T1_ASE
rs.rs_db_name: pubs
rs.rs_ds_sa_user: sa
rs.rs_ds_sa_pass: <sa_password>
rs.rs_db_maint_user: pubs_maint
Paramètre Description
rs.rs_ds_name Nom du serveur contenant la base de données à migrer
rs.rs_db_name Nom de la base de données à migrer
rs.rs_ds_sa_user Login sa dans le serveur ASE hébergeant la base de données à migrer
rs.rs_ds_sa_password Mot de passe du login sa dans le serveur ASE hébergeant la base de données à migrer
rs.rs_db_maint_user Nom du user de maintenance dans la base de données à migrer.

Exécution du fichier de ressources upgrdb_DBA_T1_ASE_pubs.rs

Après personnalisation du fichier de ressource upgrdb_DBA_T1_ASE_pubs.rs, la migration de la base utilisateur pubs dans le serveur DBA_T1_ASE est déclenchée avec le binaire rs_init dans le répertoire $SYBASE/$SYBASE_REP/install (/Software/sybase/repsrv-12.6/REP-12_6/install dans le contexte de cet article).

rs_init [-a]
    [-c charset]
    [-e]
    [-h]
    [-l language]
    [-log log_file]
    [-r resource_file]
    [-s release_directory]
    [-v]

L’option -r permet de donner un fichier de ressources au binaire rs_init et évite ainsi l’utilisation graphique du binaire rs_init.

Pour lancer la migration de la base pubs du serveur DBA_T1_ASE avec le binaire rs_init en utilisant le fichier de ressource /Software/sybase/repsrv-12.6/REP-12_6/install/upgrdb_DBA_T1_ASE_pubs.rs :

export SYBASE=/Software/sybase/repsrv-12.6
export SYBASE_REP=REP-12_6
export SYBASE_OCS=OCS-12_5

PATH=$SYBASE/$SYBASE_REP/bin:$SYBASE/$SYBASE_OCS/bin:$PATH
export PATH
LD_LIBRARY_PATH=$SYBASE/$SYBASE_REP/lib:$SYBASE/$SYBASE_OCS/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$SYBASE/$SYBASE_REP/install/rs_init -r/$SYBASE/$SYBASE_REP/init/rs/upgrdb_DBA_T1_ASE_pubs.rs
      -log $SYBASE/$SYBASE_REP/init/rs/upgrdb_DBA_T1_ASE_pubs.log

Le fichier de log de la migration de la base pubs du serveur DBA_T1_ASE est donné à l’annexe 2.

Pour Sybase RS 12.6, très peu de tâches sont réalisées :

  • migration du schéma de la base de données utilisateur pubs avec le script rsupgrdb.sql localisé dans le répertoire $SYBASE/$SYBASE_REP/upgrade (/Software/sybase/resprv-12.6/upgrade)

La migration s’est déroulée avec succès si le message ci-dessous apparaît à la fin du fichier de log :

Configuration completed successfully.

Opérations post-migration

À l’issue des deux principales opérations ci-dessous :

  • migration de la base RSSD
  • migration des bases de données utilisateur

il ne reste plus qu’à stopper les agents de réplication sur les bases primaires, redémarrer le serveur de réplication DBA_T1_REP avec les binaires Replication Server 12.6 et redémarrer les agents de réplication sur les bases primaires.

Arrêt des agents de réplication sur les bases primaires

DBA_T1_ASE > use pubs
DBA_T1_ASE > go
DBA_T1_ASE > exec sp_stop_rep_agent 'pubs'
DBA_T1_ASE > go

Redémarrage du serveur de réplication avec les binaires Replication Server 12.6

Le serveur de réplication DBA_T1_REP a été arrêté à l’étape de la migration de la base RSSD. Redémarrer alors le serveur de réplication DBA_T1_REP avec le fichier d’environnement DBA_T1_REP.rep.126 localisé dans le répertoire $DBA/etc.

UNIX > nohup $SYBASE/$SYBASE_REP/bin/repserver -C$CFG/$DSQUERY.cfg -S$DSQUERY -E $LOG/$DSQUERY.log &

Redémarrage des agents de réplication sur les bases primaires

DBA_T1_ASE > use pubs
DBA_T1_ASE > go
DBA_T1_ASE > exec sp_start_rep_agent 'pubs'
DBA_T1_ASE > go

Consulter alors le fichier de log du serveur de réplication DBA_T1_REP, les fichiers de log des serveurs ASE impliqués dans la réplication ainsi que la réplication effective des données dans une table de test pour s’assurer qu’aucune erreur ne se produit.

Validation effective du site vers Sybase Replication Server 12.6

Une fois que la base RSSD et les bases utilisateur sont migrées, les opérations ne sont pas tout à fait terminées. En effet, les nouvelles fonctionnalités Replication Server 12.6 ne pourront être utilisées que si la version du site du serveur de réplication est 1260.

Versions système et site de Replication server (sysadmin system_version et sysadmin site_version)

Les commandes replication server sysadmin site_version et sysadmin system_version permettent de récupérer les versions système et site du serveur de réplication :

DBA_T1_REP> sysadmin site_version
DBA_T1_REP> go

The current site version is '1200'.
DBA_T1_REP> sysadmin system_version
DBA_T1_REP> go

The current system version is 1102

Les commandes create, alter et drop replication definition ne peuvent être utilisées que si la version du site de Replication Server est 1200 minimum.

Pour ce qui concerne cet article : la version système de Replication Server est 1102 et la version site de Replication Server est 1200 après migration vers la version 12.6.

Version système d’un système de réplication

La version système est la version minimale de Replication Server autorisée dans un système de réplication (par exemple, si la version système d’un système de réplication est 1151, il est impossible d’utiliser ou installer un serveur de réplication qui a une version inférieure à la version 11.5.1 dans le système).

Si la version système est inférieure à 1102 (ce qui n’est pas notre cas), les nouvelles fonctionnalités introduites dans Sybase Replication Server 11.5, 12.0, 12.1, 12.5 et 12.6 ne peuvent pas être utilisées.

Même si tous les serveurs de réplication dans un système sont à la version 12.6, il n’est pas nécessaire d’appliquer la version système à une version supérieure à la version 1102 (la version système n’est pas modifiée dans notre cas bien que l’on soit sur qu’il n’y ait que des versions Sybase Replication Server 12.0 au minimum dans nos systèmes de réplication).

Une fois qu’une version système est mise à jour vers une nouvelle version système supérieure, aucun downgrade n’est possible. Une réinstallation est alors nécessaire. Un downgrade n’est possible que si la version system demeure inchangée.

Application de la version site à 1260

Pour utiliser les nouvelles fonctionnalités de Sybase Replication Server 12.6, la valeur 1260 doit être appliquée à la version site, cette valeur est appliquée avec la commande replication server sysadmin site_version :

DBA_T1_REP> sysadmin site_version, 1260
DBA_T1_REP> go

Une fois qu’un serveur de réplication est montée vers une nouvelle version site, aucun downgrade n’est possible. Une réinstallation est alors nécessaire. Un downgrade n’est possible que si la version site demeure inchangée.

La version site ne peut être appliquée à 1260 que si la version système est 1102 ou supérieure.

ANNEXE 1 - Fichier de log de la migration de la base RSSD vers Sybase Replication Server 12.6

BEGIN ENVIRONMENT INFORMATION
USER ENVIRONMENT
----------------------------------------
user name:                     spaquot
current directory:             /Software/sybase/repsrv-12.6/REP-12_6/init/rs
character set:                 iso_1
language:                      us_english
Component Directory:           /Software/sybase/repsrv-12.6/REP-12_6
working release directory:     /Software/sybase/repsrv-12.6
DSQUERY:                       DBA_T1_REP
END ENVIRONMENT INFORMATION
Directory service provider: 'InterfacesDriver'.
Using resource file 'upgr_DBA_T1_REP.rs' for product attributes.
Running task: check the RSSD SQL Server.
Sending the following SQL command to the server: 'dbcc is_replication_enabled'.
Task succeeded: check the RSSD SQL Server.
Running task: shut down the Replication Server.
Sending the following SQL command to the server: 'shutdown'.
Task succeeded: shut down the Replication Server.
Running task: upgrade the RSSD.
Sending the following SQL command to the server: 'use DBA_T1_REP_RSSD'.
Sending the following SQL command to the server: '
if exists (select name from sysobjects   where name = 'rs_updown_status' and type = 'U')
drop table rs_updown_status'.
Sending the following SQL command to the server:
'create table rs_updown_status(name varchar(64), comments varchar(255))'.
Sending the following SQL command to the server:
'insert into rs_updown_status (name, comments) values ('server','RSD_T1_ASE')'.
Done
Sending the following SQL command to the server: 'sp_serverinfo server_csname'.
Sending the following SQL command to the server: 'set char_convert off'.
Done
Loading script 'rsupgr.sql' into database 'RSD_T1_ASE'.
Sending the following SQL command to the server: 'dbcc settrunc ('ltm','valid')'.
SQL Server message: msg 0, level 10, state 1
"Column name has been changed."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_objects' is set to false."
SQL Server message: msg 0, level 10, state 1
"Default bound to column."
SQL Server message: msg 0, level 10, state 1
"Object name has been changed."
SQL Server message: msg 0, level 10, state 1
"Object name has been changed."
SQL Server message: msg 0, level 10, state 1
"Object name has been changed."
SQL Server message: msg 0, level 10, state 1
"Object name has been changed."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_objects' is set to true."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 2) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 4) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 5) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 2) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 3) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 4) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 5) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 2) is being rebuilt."
SQL Server message: msg 1918, level 10, state 1
"Non-clustered index (index id = 3) is being rebuilt."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_objects' is set to false."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_columns' is set to false."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_functions' is set to false."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_objects' is set to true."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_columns' is set to true."
SQL Server message: msg 0, level 10, state 1
"The replication status for 'rs_functions' is set to true."
Done
Sending the following SQL command to the server: 'dbcc settrunc ('ltm','ignore')'.
Loading Replication Server stored procedures in RSSD 'RSD_T1_ASE'.
Loading script 'rsprocs_ase.sql' into database 'DBA_T1_REP_RSSD'.
Done
Loaded script 'rsprocs_ase.sql' successfully.
Upgraded from '12.0 to '12.6.0'..
Sending the following SQL command to the server: '
if exists (select name from sysobjects   where name = 'rs_updown_status' and type = 'U')
drop table rs_updown_status'.
Replication Server 'DBA_T1_REP' can now be restarted.
Task succeeded: upgrade the RSSD.
Configuration completed successfully.
Exiting.
The log file for this session is 'upgr_DBA_T1_REP.log'.
Log close.

ANNEXE 2 - Fichier de log de la migration de la base primaire pubs pour Sybase Replication Server 12.6

BEGIN ENVIRONMENT INFORMATION
USER ENVIRONMENT
----------------------------------------
user name:                     spaquot
current directory:             /Software/sybase/repsrv-12.6/REP-12_6/init/rs
character set:                 iso_1
language:                      us_english
Component Directory:           /Software/sybase/repsrv-12.6/REP-12_6
working release directory:     /Software/sybase/repsrv-12.6
DSQUERY:                       DBA_T1_REP
END ENVIRONMENT INFORMATION
Directory service provider: 'InterfacesDriver'.
Using resource file 'upgrdb_DBA_T1_ASE_pubs.rs' for product attributes.
Running task: load a SQL script into a database.
Sending the following SQL command to the server:
'sp_role "grant", replication_role, sa'.
SQL Server message: msg 11107, level 10, state 1
"All the roles specified to be granted in the grant role statement have already been granted to grantee 'sa'."
Loading script 'upgrade/rsupgrdb.sql' into database 'pubs'.
Sending the following SQL command to the server: 'use pubs'.
Done
Loaded script 'upgrade/rsupgrdb.sql' successfully.
Sending the following SQL command to the server:
'sp_role "grant", replication_role, pubs_maint'.
SQL Server message: msg 11107, level 10, state 1
"All the roles specified to be granted in the grant role statement have already been granted to grantee 'pubs_maint'."
Granted replication role to maintenance user
Task succeeded: load a SQL script into a database.
Configuration completed successfully.
Exiting.
The log file for this session is 'upgrdb_DBA_T1_ASE_pubs.log'.
Log close.