{"id":4029,"date":"2021-04-24T08:59:40","date_gmt":"2021-04-24T08:59:40","guid":{"rendered":"https:\/\/swiv.com.br\/failover-to-a-logical-standby-using-sql-plus\/"},"modified":"2026-05-27T20:02:32","modified_gmt":"2026-05-27T19:02:32","slug":"failover-to-a-logical-standby-using-sql-plus","status":"publish","type":"post","link":"https:\/\/swiv.com.br\/index.php\/2021\/04\/24\/failover-to-a-logical-standby-using-sql-plus\/","title":{"rendered":"Failover to a Logical Standby using SQL *Plus"},"content":{"rendered":"\n<p>Verificando as condi\u00e7\u00f5es do ambiente primary e standby:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix1 ~]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 04:21:27 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortex                         READ WRITE           PRIMARY\n \nSQL&gt; SELECT FLASHBACK_ON FROM V$DATABASE;\n \nFLASHBACK_ON\n------------------\nYES\n \nSQL&gt; SELECT THREAD#,SEQUENCE#, STATUS FROM V$LOG;\n \n   THREAD#  SEQUENCE# STATUS\n---------- ---------- ----------------\n         1        193 CURRENT\n         1        191 INACTIVE\n         1        192 INACTIVE\n<\/pre><\/div>\n\n\n<p>Standby:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix2 ~]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 04:24:25 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortexDR                       READ WRITE           LOGICAL STANDBY\n \nSQL&gt; ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;\n \nDatabase altered.\n \nSQL&gt; SELECT FLASHBACK_ON FROM V$DATABASE;\n \nFLASHBACK_ON\n------------------\nYES\n \nSQL&gt; SELECT FILE_NAME, SEQUENCE# AS SEQ#, FIRST_CHANGE# AS F_SCN#,\nNEXT_CHANGE# AS N_SCN#, TIMESTAMP,\nDICT_BEGIN, DICT_END,\nTHREAD# AS THR#, APPLIED\nFROM DBA_LOGSTDBY_LOG\nORDER BY SEQUENCE#;  2    3    4    5    6\n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/cortexdr\/archivelog\/cortex1_187_1039033628.arc\n       187    6329394    6433563 2021-04-08:04:15:47 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_188_1039033628.arc\n       188    6433563    6435070 2021-04-08:04:15:46 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_189_1039033628.arc\n       189    6435070    6439330 2021-04-08:04:24:46 NO  NO           1 YES\n \n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/cortexdr\/archivelog\/cortex1_190_1039033628.arc\n       190    6439330    6439337 2021-04-08:04:24:46 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_191_1039033628.arc\n       191    6439337    6439342 2021-04-08:04:24:48 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_192_1039033628.arc\n       192    6439342    6540301 2021-04-24:04:24:27 NO  NO           1 YES\n \n \n6 rows selected.\n<\/pre><\/div>\n\n\n<p>Gerando novo archive no primary:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; ALTER SYSTEM SWITCH LOGFILE;\n \nSystem altered.\n<\/pre><\/div>\n\n\n<p>Que foi aplicado com sucesso no standby (sequence 193):<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; \/\n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/cortexdr\/archivelog\/cortex1_187_1039033628.arc\n       187    6329394    6433563 2021-04-08:04:15:47 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_188_1039033628.arc\n       188    6433563    6435070 2021-04-08:04:15:46 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_189_1039033628.arc\n       189    6435070    6439330 2021-04-08:04:24:46 NO  NO           1 YES\n \n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/cortexdr\/archivelog\/cortex1_190_1039033628.arc\n       190    6439330    6439337 2021-04-08:04:24:46 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_191_1039033628.arc\n       191    6439337    6439342 2021-04-08:04:24:48 NO  NO           1 YES\n \n+DG_RECO\/cortexdr\/archivelog\/cortex1_192_1039033628.arc\n       192    6439342    6540301 2021-04-24:04:24:27 NO  NO           1 YES\n \n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/cortexdr\/archivelog\/cortex1_193_1039033628.arc\n       193    6540301    6542996 2021-04-24:04:26:41 NO  NO           1 YES\n \n \n7 rows selected.\n<\/pre><\/div>\n\n\n<p>Simulando uma indisponibilidade no ambiente primary, realizando um shutdown abort:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; SHU ABORT;\nORACLE instance shut down.\nSQL&gt; !ps -ef | grep pmon\ngrid      3310     1  0 04:15 ?        00:00:00 asm_pmon_+ASM\noracle    5519  4548  0 04:29 pts\/0    00:00:00 \/bin\/bash -c ps -ef | grep pmon\noracle    5521  5519  0 04:29 pts\/0    00:00:00 grep pmon\n<\/pre><\/div>\n\n\n<p>A opera\u00e7\u00e3o de Failover para o Logical Standby consiste na execu\u00e7\u00e3o do comando abaixo:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; ALTER DATABASE ACTIVATE LOGICAL STANDBY DATABASE FINISH APPLY;\n \nDatabase altered.\n \nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortexDR                       READ WRITE           PRIMARY\n<\/pre><\/div>\n\n\n<p>No alert do novo primary temos o processo de failover sendo detalhado:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n2021-04-24T04:31:10.773409-03:00\nALTER DATABASE ACTIVATE LOGICAL STANDBY DATABASE FINISH APPLY (CORTEXDR)\n2021-04-24T04:31:10.775639-03:00\nLOGSTDBY: Logical ACTIVATE state\n2021-04-24T04:31:10.826360-03:00\nLOGSTDBY: terminating active RFS connections for role change\n2021-04-24T04:31:10.832661-03:00\nLOGMINER: session# 1 begin Terminal Apply mode\n2021-04-24T04:31:11.878120-03:00\nLOGMINER: Terminal Apply complete with thread 1 seq 194 scn 0x000000000063db83 session# 1\n2021-04-24T04:31:11.878455-03:00\nLOGMINER: WARNING: session# 1 failover completed with potential data loss\n2021-04-24T04:31:11.878572-03:00\nLOGMINER: thread merge scn 0x000000000063db83\n2021-04-24T04:31:11.880366-03:00\nLOGSTDBY: STANDBY_BECAME_PRIMARY_SCN established at 6544258 &#x5B;0x000000000063db82]\n2021-04-24T04:31:11.882473-03:00\nLOGSTDBY Apply process AS01 server id=1 pid=87 OS id=4473 stopped\n2021-04-24T04:31:11.883063-03:00\nLOGSTDBY Apply process AS03 server id=3 pid=89 OS id=4477 stopped\n2021-04-24T04:31:11.883915-03:00\nLOGSTDBY Apply process AS04 server id=4 pid=90 OS id=4479 stopped\n2021-04-24T04:31:11.885878-03:00\nLOGSTDBY Apply process AS05 server id=5 pid=91 OS id=4481 stopped\n2021-04-24T04:31:11.888140-03:00\nLOGSTDBY Apply process AS02 server id=2 pid=88 OS id=4475 stopped\n2021-04-24T04:31:11.889941-03:00\nLOGSTDBY Analyzer process AS00 server id=0 pid=86 OS id=4471 stopped\n2021-04-24T04:31:11.892214-03:00\nLOGMINER: session#=1 (Logical_Standby$), preparer MS02 pid=85 OS id=4468 sid=115 stopped\n2021-04-24T04:31:11.902819-03:00\nLOGMINER: session#=1 (Logical_Standby$), reader MS00 pid=83 OS id=4464 sid=127 stopped\n2021-04-24T04:31:11.934742-03:00\nLOGMINER: session#=1 (Logical_Standby$), builder MS01 pid=84 OS id=4466 sid=129 stopped\n2021-04-24T04:31:11.939616-03:00\nLOGSTDBY status: ORA-16128: User initiated stop apply successfully completed\n2021-04-24T04:31:12.254182-03:00\nSat Apr 24 04:31:12 2021\nLogminer Bld: Lockdown Complete. UnwindToSCN is 6580502\nLOGSTDBY: Starting SCN of new stream from recent lockdown &#x5B;0x0000000000646916]\n2021-04-24T04:31:12.289014-03:00\n.... (PID:4434): Database role cleared from LOGICAL STANDBY &#x5B;dglc.c:1943]\nStarting background process LSP1\n2021-04-24T04:31:12.308860-03:00\nLSP1 started with pid=51, OS id=4894\n2021-04-24T04:31:12.309484-03:00\nLOGSTDBY: (LSP1) LogMiner Dictionary Build Process Created\n2021-04-24T04:31:12.310562-03:00\nLOGSTDBY: enabling scheduler job queue processes.\n2021-04-24T04:31:12.310602-03:00\nJOBQ: re-enabling CJQ0\n2021-04-24T04:31:12.320958-03:00\nLOGSTDBY: (LSP1) Archiving online logs as a primary database\nCompleted: ALTER DATABASE ACTIVATE LOGICAL STANDBY DATABASE FINISH APPLY\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\">Reinstate the Primary Database after Failover to Logical Standby Database<\/h2>\n\n\n\n<p>Coletando no novo primary o Flashback_SCN que ser\u00e1 usado como refer\u00eancia na opera\u00e7\u00e3o de reinstate, com o seguinte comando:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix2 trace]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 04:38:40 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; SELECT MERGE_CHANGE# AS FLASHBACK_SCN, PROCESSED_CHANGE# AS RECOVERY_SCN FROM DBA_LOGSTDBY_HISTORY\nWHERE STREAM_SEQUENCE# = (SELECT MAX(STREAM_SEQUENCE#) -1 FROM DBA_LOGSTDBY_HISTORY);  2\n \nFLASHBACK_SCN RECOVERY_SCN\n------------- ------------\n      6544258      6544260\n<\/pre><\/div>\n\n\n<p>Realizando o Flashback database no primary antigo:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix1 ~]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 04:44:48 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \nConnected to an idle instance.\n \nSQL&gt; startup mount;\nORACLE instance started.\n \nTotal System Global Area 2583690520 bytes\nFixed Size                  8899864 bytes\nVariable Size             570425344 bytes\nDatabase Buffers         1996488704 bytes\nRedo Buffers                7876608 bytes\nDatabase mounted.\nSQL&gt; FLASHBACK DATABASE TO SCN 6544258;\n \nFlashback complete.\n<\/pre><\/div>\n\n\n<p>Convertendo o primary antigo para physical standby:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; ALTER DATABASE CONVERT TO PHYSICAL STANDBY;\n \nDatabase altered.\n \nSQL&gt; SHU IMMEDIATE;\nORA-01109: database not open\n \n \nDatabase dismounted.\nORACLE instance shut down.\nSQL&gt; STARTUP MOUNT;\nORACLE instance started.\n \nTotal System Global Area 2583690520 bytes\nFixed Size                  8899864 bytes\nVariable Size             570425344 bytes\nDatabase Buffers         1996488704 bytes\nRedo Buffers                7876608 bytes\nDatabase mounted.\nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortex                         MOUNTED              PHYSICAL STANDBY\n<\/pre><\/div>\n\n\n<p>Confirmando que o par\u00e2metro FAL_SERVER esteja devidamente preenchido no novo standby:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; SHO PARAMETER FAL_SERVER\n \nNAME                                 TYPE        VALUE\n------------------------------------ ----------- ------------------------------\nfal_server                           string      cortexDR\nSQL&gt;\n<\/pre><\/div>\n\n\n<p>Removendo archive divergentes no novo standby caso os mesmos existam:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix1 ~]$ rman target \/\n \nRecovery Manager: Release 19.0.0.0.0 - Production on Sat Apr 24 04:51:47 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle and\/or its affiliates.  All rights reserved.\n \nconnected to target database: CORTEX (DBID=548968087, not open)\n \nRMAN&gt; DELETE FORCE ARCHIVELOG FROM SCN 6544258;\n \nusing target database control file instead of recovery catalog\nallocated channel: ORA_DISK_1\nchannel ORA_DISK_1: SID=54 device type=DISK\nspecification does not match any archived log in the repository\n<\/pre><\/div>\n\n\n<p>Realizando recover no novo standby utilizando o SCN coletado no novo primary:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix1 ~]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 05:02:56 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; RECOVER MANAGED STANDBY DATABASE UNTIL CHANGE 6544260;\nMedia recovery complete.\n<\/pre><\/div>\n\n\n<p>Habilitando o Database Guard:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; ALTER DATABASE GUARD ALL;\n \nDatabase altered.\n<\/pre><\/div>\n\n\n<p>Ativando o physical standby para o mesmo se tornar o primary database:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nSQL&gt; ALTER DATABASE ACTIVATE STANDBY DATABASE;\n \nDatabase altered.\n \nSQL&gt; ALTER DATABASE OPEN;\n \nDatabase altered.\n \nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortex                         READ WRITE           PRIMARY\n<\/pre><\/div>\n\n\n<p>No alert temos os detalhes desse processo:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n2021-04-24T05:09:22.309939-03:00\nALTER DATABASE ACTIVATE STANDBY DATABASE\n2021-04-24T05:09:22.310009-03:00\nALTER DATABASE ACTIVATE &#x5B;PHYSICAL] STANDBY DATABASE &#x5B;Process Id: 8887] (cortex)\n2021-04-24T05:09:22.311485-03:00\nNET  (PID:8887): Begin: SRL archival\nNET  (PID:8887): End: SRL archival\nRESETLOGS after incomplete recovery UNTIL CHANGE 6544260 time 04\/24\/2021 04:31:25\n2021-04-24T05:09:22.727364-03:00\nNET  (PID:8887): Waiting for all non-current ORLs to be archived\n2021-04-24T05:09:22.727413-03:00\nNET  (PID:8887): All non-current ORLs have been archived\nNET  (PID:8887): Clearing online redo logfile 1 +DG_DATA\/CORTEX\/ONLINELOG\/group_1.261.1039033629\nNET  (PID:8887): Clearing online redo logfile 2 +DG_DATA\/CORTEX\/ONLINELOG\/group_2.262.1039033629\nNET  (PID:8887): Clearing online redo logfile 3 +DG_DATA\/CORTEX\/ONLINELOG\/group_3.263.1039033647\nClearing online log 1 of thread 1 sequence number 193\nClearing online log 2 of thread 1 sequence number 194\nClearing online log 3 of thread 1 sequence number 192\n2021-04-24T05:09:45.365212-03:00\nNET  (PID:8887): Clearing online redo logfile 1 complete\nNET  (PID:8887): Clearing online redo logfile 2 complete\nNET  (PID:8887): Clearing online redo logfile 3 complete\nResetting resetlogs activation ID 548987031 (0x20b8e097)\nOnline log +DG_DATA\/CORTEX\/ONLINELOG\/group_1.261.1039033629: Thread 1 Group 1 was previously cleared\nOnline log +DG_FRA\/CORTEX\/ONLINELOG\/group_1.257.1039033637: Thread 1 Group 1 was previously cleared\nOnline log +DG_DATA\/CORTEX\/ONLINELOG\/group_2.262.1039033629: Thread 1 Group 2 was previously cleared\nOnline log +DG_FRA\/CORTEX\/ONLINELOG\/group_2.258.1039033637: Thread 1 Group 2 was previously cleared\nOnline log +DG_DATA\/CORTEX\/ONLINELOG\/group_3.263.1039033647: Thread 1 Group 3 was previously cleared\nOnline log +DG_FRA\/CORTEX\/ONLINELOG\/group_3.259.1039033651: Thread 1 Group 3 was previously cleared\nStandby became primary SCN: 6544258\n<\/pre><\/div>\n\n\n<p>Ap\u00f3s isso, podemos criar um DB_LINK apontando para o primary que est\u00e1 em opera\u00e7\u00e3o e finalizar o processo conforme abaixo, ou seja, normalizando o novo ambiente logical standby:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix1 trace]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 05:49:40 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortex                         READ WRITE           PRIMARY\n \nSQL&gt; CREATE PUBLIC DATABASE LINK BSS CONNECT TO system IDENTIFIED BY oracle USING &#039;CORTEXDR&#039;;\n \nDatabase link created.\n \nSQL&gt; SELECT * FROM DUAL@BSS;\n \nD\n-\nX\n \nSQL&gt; ALTER DATABASE START LOGICAL STANDBY APPLY NEW PRIMARY BSS;\n \nDatabase altered.\n \nSQL&gt; SELECT DB_UNIQUE_NAME,OPEN_MODE,DATABASE_ROLE FROM V$DATABASE;\n \nDB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE\n------------------------------ -------------------- ----------------\ncortex                         READ WRITE           LOGICAL STANDBY\n<\/pre><\/div>\n\n\n<p>No alert podemos observar os detalhes da opera\u00e7\u00e3o:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n2021-04-24T05:50:16.440372-03:00\nALTER DATABASE START LOGICAL STANDBY APPLY NEW PRIMARY BSS\n2021-04-24T05:50:16.540033-03:00\nALTER DATABASE START LOGICAL STANDBY APPLY (cortex)\n2021-04-24T05:50:16.540106-03:00\nwith optional part\nNEW PRIMARY BSS.LOCALDOMAIN\nLOGSTDBY: End stream parameters:\nLOGSTDBY: Local  dbid          &#x5B;548968087]\nLOGSTDBY: Local  first_change# &#x5B;0]\nLOGSTDBY: Local  last_change#  &#x5B;6541881]\nLOGSTDBY: Remote dbid          &#x5B;548968087]\nLOGSTDBY: Remote first_change# &#x5B;0]\nLOGSTDBY: Remote last_change#  &#x5B;6541881]\nLOGSTDBY: Remote sbp_change#   &#x5B;0]\nLOGSTDBY: End stream permitted -- apply state in synch with primary dbid &#x5B;548968087].\nLOGSTDBY: End stream complete.\nAttempt to start background Logical Standby process\nStarting background process LSP0\n2021-04-24T05:50:17.130313-03:00\nLSP0 started with pid=65, OS id=12195\n2021-04-24T05:50:17.644726-03:00\n.... (PID:12145): Database role changed from PRIMARY to LOGICAL STANDBY &#x5B;dglc.c:1992]\nCompleted: ALTER DATABASE START LOGICAL STANDBY APPLY NEW PRIMARY BSS\n<\/pre><\/div>\n\n\n<p>Gerando novo archive no primary:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix2 trace]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 05:51:02 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; ALTER SYSTEM SWITCH LOGFILE;\n \nSystem altered.\n \nSQL&gt; SELECT THREAD#,SEQUENCE#, STATUS FROM V$LOG;\n \n   THREAD#  SEQUENCE# STATUS\n---------- ---------- ----------------\n         1         10 ACTIVE\n         1         11 CURRENT\n         1          9 INACTIVE\n<\/pre><\/div>\n\n\n<p>Ap\u00f3s alguns minutos (at\u00e9 observando o alert do novo standby), podemos ver que o SQL Apply est\u00e1 habilitado e fazendo seu trabalho:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \\&quot;wp-block-syntaxhighlighter-code\\&quot;\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;oracle@fornix1 trace]$ sqlplus \/ as sysdba\n \nSQL*Plus: Release 19.0.0.0.0 - Production on Sat Apr 24 05:55:26 2021\nVersion 19.3.0.0.0\n \nCopyright (c) 1982, 2019, Oracle.  All rights reserved.\n \n \nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production\nVersion 19.3.0.0.0\n \nSQL&gt; SELECT FILE_NAME, SEQUENCE# AS SEQ#, FIRST_CHANGE# AS F_SCN#,\nNEXT_CHANGE# AS N_SCN#, TIMESTAMP,\nDICT_BEGIN, DICT_END,\nTHREAD# AS THR#, APPLIED\nFROM DBA_LOGSTDBY_LOG\nORDER BY SEQUENCE#;  2    3    4    5    6\n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/CORTEX\/ARCHIVELOG\/2021_04_24\/thread_1_seq_6.450.1070690071\n         6    6576069    6580523 2021-04-24:05:54:34 YES NO           1 YES\n \n+DG_RECO\/CORTEX\/ARCHIVELOG\/2021_04_24\/thread_1_seq_7.451.1070690071\n         7    6580523    6580898 2021-04-24:05:54:34 NO  YES          1 YES\n \n+DG_RECO\/CORTEX\/ARCHIVELOG\/2021_04_24\/thread_1_seq_8.449.1070690073\n         8    6580898    6587939 2021-04-24:05:54:34 NO  NO           1 YES\n \n \nFILE_NAME\n--------------------------------------------------------------------------------\n      SEQ#     F_SCN#     N_SCN# TIMESTAMP           DIC DIC       THR# APPLIED\n---------- ---------- ---------- ------------------- --- --- ---------- --------\n+DG_RECO\/CORTEX\/ARCHIVELOG\/2021_04_24\/thread_1_seq_9.453.1070690075\n         9    6587939    6592023 2021-04-24:05:54:34 NO  NO           1 YES\n \n+DG_RECO\/CORTEX\/ARCHIVELOG\/2021_04_24\/thread_1_seq_10.452.1070690075\n        10    6592023    6598117 2021-04-24:05:54:34 NO  NO           1 CURRENT\n \n \nSQL&gt;\n<\/pre><\/div>\n\n\n<p>Obs: Este procedimento foi criado pelo senhor Ahmed Baraka (www.ahmedbaraka.com) e foi apenas reproduzido por mim em um laborat\u00f3rio pessoal para fins de aprendizado.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Verificando as condi\u00e7\u00f5es do ambiente primary e standby: Standby: Gerando novo archive no primary: Que foi aplicado com sucesso no standby (sequence 193): Simulando uma indisponibilidade no ambiente primary, realizando um shutdown abort: A opera\u00e7\u00e3o de Failover para o Logical Standby consiste na execu\u00e7\u00e3o do comando abaixo: No alert do novo primary temos o processo [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-4029","post","type-post","status-publish","format-standard","hentry","category-high-availability"],"_links":{"self":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/4029","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=4029"}],"version-history":[{"count":1,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/4029\/revisions"}],"predecessor-version":[{"id":9160,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/posts\/4029\/revisions\/9160"}],"wp:attachment":[{"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=4029"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=4029"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/swiv.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=4029"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}