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 :
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 SybaseDBA_T1_ASE
et la base de donnéespubs
standby est hébergée dans le serveurDBA_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éplicationDBA_T1_REP
- migration du schéma de la base de données RSSD
DBA_T1_REP_RSSD
avec le scriptrsupgr.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 scriptrsupgrdb.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.