Skip to content

convert_stby

PhilippeLeroux edited this page May 22, 2017 · 1 revision

Table of Contents


Supprimer la configuration d'un Dataguard

Configuration du Dataguard

  • Primary : plutot
  • Physical : plutard
     oracle@srvplutard01:PLUTARD:stby> dgmgrl sys/Oracle12 'show configuration'
     DGMGRL for Linux: Release 12.2.0.1.0 - Production on Mon Apr 24 12:41:48 2017
    
     Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.
    
     Welcome to DGMGRL, type "help" for information.
     Connected to "PLUTARD"
     Connected as SYSDBA.
    
     Configuration - DGCONF
    
       Protection Mode: MaxPerformance
       Members:
       plutot  - Primary database
     	plutard - Physical standby database
    
     Fast-Start Failover: DISABLED
    
     Configuration Status:
     SUCCESS   (status updated 27 seconds ago)
    
     oracle@srvplutard01:PLUTARD:stby>
    

Convertir la 'Physical standby' plutard en base 'Primary'

Le script plescripts/db/stby/convert_stby.sh automatise les étapes :

$ cd ~/plescripts/db/stby
$ ./convert_stby.sh -db=plutard -role=physical
# Load oracle environment for PLUTARD
The Oracle base remains unchanged with value /u02/app/oracle

# PLUTARD role=physical, role read from configuration : physical
12h44> srvctl stop database -db PLUTARD
12h44> srvctl start database -db PLUTARD -startoption mount

12h44> sqlplus -s sys/Oracle12 as sysdba

SQL> recover managed standby database finish;
Restauration physique terminee.

SQL> alter database commit to switchover to primary with session shutdown;

Base de donnees modifiee.

Ecoule : 00 :00 :00.87

SQL> alter database open;

Base de donnees modifiee.

Ecoule : 00 :00 :55.65

# ======================================================================================================
12h47> dgmgrl
connect sys/Oracle12
Connected to "PLUTARD"
remove database PLUTARD;
Removed database "plutard" from the configuration

12h47> sudo -u grid -i asmcmd rm -f DATA/PLUTARD/dr1db_*.dat
12h48> sudo -u grid -i asmcmd rm -f FRA/PLUTARD/dr2db_*.dat

# ======================================================================================================
# Drop Standby redo log
12h48> sqlplus -s sys/Oracle12 as sysdba
drop standby logfile group 6
drop standby logfile group 4
drop standby logfile group 5
drop standby logfile group 7

Procedure PL/SQL terminee avec succes.

Ecoule : 00 :00 :01.61

[supprimé : suppression des alias TNS et des services]

# ======================================================================================================
12h49> sqlplus -s sys/Oracle12 as sysdba

SQL> alter system reset standby_file_management scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.02

SQL> alter system reset log_archive_config scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset fal_server scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter system reset log_archive_dest_1 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset log_archive_dest_2 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset log_archive_dest_state_2 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter system reset remote_login_passwordfile scope=spfile sid='*';
alter system reset remote_login_passwordfile scope=spfile sid='*'
*
ERREUR a la ligne 1 :
ORA-32010: entree a supprimer dans SPFILE introuvable


Ecoule : 00 :00 :00.03

SQL> alter system reset db_file_name_convert scope=spfile sid='*';
alter system reset db_file_name_convert scope=spfile sid='*'
*
ERREUR a la ligne 1 :
ORA-32010: entree a supprimer dans SPFILE introuvable


Ecoule : 00 :00 :00.00

SQL> alter system reset log_file_name_convert scope=spfile sid='*';
alter system reset log_file_name_convert scope=spfile sid='*'
*
ERREUR a la ligne 1 :
ORA-32010: entree a supprimer dans SPFILE introuvable


Ecoule : 00 :00 :00.00

SQL> alter system reset dg_broker_config_file1 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset dg_broker_config_file2 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter system reset dg_broker_start scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter database no force logging;

Base de donnees modifiee.

Ecoule : 00 :00 :00.32

SQL> shutdown immediate
Base de donnees fermee.
Base de donnees demontee.
Instance ORACLE arretee.

12h49> srvctl modify database -db PLUTARD -startoption open
12h49> srvctl modify database -db PLUTARD -role primary

12h49> srvctl start database -db PLUTARD
12h51< srvctl running time : 1mn13s

Supprimer la configuration Dataguard de la base plutot (Primary)

Le script plescripts/db/stby/convert_stby.sh automatise les étapes :

$ cd ~/plescripts/db/stby
$ ./convert_stby.sh -db=plutot -role=primary

# Load oracle environment for PLUTOT
The Oracle base remains unchanged with value /u02/app/oracle

# PLUTOT role=primary, role read from configuration : primary
# ======================================================================================================
12h53> dgmgrl
connect sys/Oracle12
Connected to "PLUTOT"
disable configuration;
remove configuration;
Removed configuration

# ======================================================================================================
12h53> sudo -u grid -i asmcmd rm -f DATA/PLUTOT/dr1db_*.dat

12h53> sudo -u grid -i asmcmd rm -f FRA/PLUTOT/dr2db_*.dat

# ======================================================================================================
# Drop Standby redo log
12h53> sqlplus -s sys/Oracle12 as sysdba
drop standby logfile group 6
drop standby logfile group 4
drop standby logfile group 5
drop standby logfile group 7

Procedure PL/SQL terminee avec succes.

Ecoule : 00 :00 :01.10

[supprimé : suppression des alias TNS et des services]

# ======================================================================================================
12h54> sqlplus -s sys/Oracle12 as sysdba

SQL> alter system reset standby_file_management scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.10

SQL> alter system reset log_archive_config scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset fal_server scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter system reset log_archive_dest_1 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset log_archive_dest_2 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset log_archive_dest_state_2 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter system reset remote_login_passwordfile scope=spfile sid='*';
alter system reset remote_login_passwordfile scope=spfile sid='*'
*
ERREUR a la ligne 1 :
ORA-32010: entree a supprimer dans SPFILE introuvable


Ecoule : 00 :00 :00.02

SQL> alter system reset db_file_name_convert scope=spfile sid='*';
alter system reset db_file_name_convert scope=spfile sid='*'
*
ERREUR a la ligne 1 :
ORA-32010: entree a supprimer dans SPFILE introuvable


Ecoule : 00 :00 :00.00

SQL> alter system reset log_file_name_convert scope=spfile sid='*';
alter system reset log_file_name_convert scope=spfile sid='*'
*
ERREUR a la ligne 1 :
ORA-32010: entree a supprimer dans SPFILE introuvable


Ecoule : 00 :00 :00.00

SQL> alter system reset dg_broker_config_file1 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.00

SQL> alter system reset dg_broker_config_file2 scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter system reset dg_broker_start scope=spfile sid='*';

Systeme modifie.

Ecoule : 00 :00 :00.01

SQL> alter database no force logging;

Base de donnees modifiee.

Ecoule : 00 :00 :00.27

SQL> shutdown immediate
Base de donnees fermee.
Base de donnees demontee.
Instance ORACLE arretee.

12h55> srvctl start database -db PLUTOT
12h56< srvctl running time : 1mn21s

Clone this wiki locally