爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      DG_broker工具管理切换DG主备

      首页 知识中心 其他 文章详情页

      DG_broker工具管理切换DG主备

      2025-03-12 09:31:01 阅读次数:8

      uni,切换

      六、DG_broker工具管理切换DG主备

      6.1、设置primary和standby启动时参数文件为spfile

      show parameter spfile;
      

      6.2、给切换后的主备库都设置 DG_BROKER_START为TRUE

      alter system set dg_broker_start=true scope=both;
      !ps -ef|grep dmon
      show parameter dg_broker_start;
      SELECT d.DBID,
      d.DB_UNIQUE_NAME,
      d.FORCE_LOGGING,
      d.FLASHBACK_ON,
      d.FS_FAILOVER_STATUS,
      d.FS_FAILOVER_CURRENT_TARGET,
      d.FS_FAILOVER_THRESHOLD,
      d.FS_FAILOVER_OBSERVER_PRESENT,
      d.FS_FAILOVER_OBSERVER_HOST
      FROM v$database d;
      

      6.3、配置监听

      需要在listener.ora静态添加一个service_name为db_unique_name_DGMGRL.db_domain的注册。这个service_name会在DGMGRL重启数据库的时候用到。 通过DGMGRL重启数据库时DMON进程会先将数据库关闭,然后DGMGRL用此service_name通过listener连接到数据库,发出启动命令。 tnsnames.ora主备库要保持一致。

      切换后新主库(原备库)uni_dg2静态监听文件:

      
      [oracle@dbstandby08 ~]$ cat /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/network/admin/listener.ora
      # listener.ora Network Configuration File: /u01/oracle/product/11.2.0/db/network/admin/listener
      
      .ora
      # Generated by Oracle configuration tools.
      
      LISTENER =
        (DESCRIPTION_LIST =
          (DESCRIPTION =
            (ADDRESS_LIST = 
              (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.8)(PORT = 1521))
            )
          )
        )
      
      SID_LIST_LISTENER = 
        (SID_LIST = 
          (SID_DESC = 
            (GLOBAL_DBNAME=orcl)
            (SID_NAME = orcl)
            (ORACLE_HOME = /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1)       
          ) 
          (SID_DESC =
            (GLOBAL_DBNAME = uni_dg2)
            (ORACLE_HOME = /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1)
            (SID_NAME = orcl)
          )
          (SID_DESC =
            (GLOBAL_DBNAME = uni_dg2_DGMGRL)
            (ORACLE_HOME = /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1)
            (SID_NAME = orcl)
          )
        ) 
      
      ADR_BASE_LISTENER = /u01/oracle/tools/oracle11g
      
      
      [oracle@dbstandby08 ~]$ cat /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/network/admin/tnsnames.ora 
      LISTENER_ORCL =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.8)(PORT = 1521))
      
      uni_dg1 =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.7)(PORT = 1521))
          )
          (CONNECT_DATA =
            (SERVICE_NAME = orcl)
          )
        )
      
      uni_dg2 =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.8)(PORT = 1521))
          )
          (CONNECT_DATA =
            (SERVICE_NAME = orcl)
          )
      
        )
      
      uni_dg1_DGMGRL =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.7)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = orcl)
          )
        )
      
      uni_dg2_DGMGRL =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.8)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = orcl)
          )
        )
        
      

      切换后新备库(原主库)uni_dg1静态监听文件:

      
      [oracle@dbprimary07 admin]$ cat /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/network/admin/listener.ora
      SID_LIST_LISTENER =
        (SID_LIST =
          (SID_DESC =
            (GLOBAL_DBNAME = orcl)
            (ORACLE_HOME = /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1)
            (SID_NAME = orcl)
          )
          (SID_DESC =
            (GLOBAL_DBNAME = uni_dg1)  
            (ORACLE_HOME = /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1)  
            (SID_NAME = orcl)  
          )
            (SID_DESC =
            (GLOBAL_DBNAME = uni_dg1_DGMGRL)
            (ORACLE_HOME = /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1)
            (SID_NAME = orcl)
          )
        )
      
      LISTENER =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.7)(PORT = 1521))
        )
      
      ADR_BASE_LISTENER = /u01/oracle/tools/oracle11g
      
      [oracle@dbprimary07 admin]$ cat /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
      # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db/network/admin/tnsnames.ora
      # Generated by Oracle configuration tools.
      
      LISTENER_ORCL =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.7)(PORT = 1521))
      
      uni_dg1 =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.7)(PORT = 1521))
          )
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = orcl)
          )
        )
      
      uni_dg2 =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.8)(PORT = 1521))
          )
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = orcl)
          )
        )
      
      uni_dg1_DGMGRL =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.7)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = orcl)
          )
        )
      
      uni_dg2_DGMGRL =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.8)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = orcl)
          )
        )
      

      6.4、dgmgrl中配置broker并启用

      [oracle@dbstandby08 dbs]$ ==dgmgrl== DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production

      Copyright (c) 2000, 2009, Oracle. All rights reserved.

      Welcome to DGMGRL, type "help" for information. DGMGRL> ==connect sys/oracle@uni_dg2_DGMGRL== Connected

      ==#查看配置:== DGMGRL> show configuration Error: ORA-16525: the Data Guard broker is not yet available

      Configuration details cannot be determined by DGMGRL

      
      #如果之前有配置,请先移除
      DGMGRL> REMOVE CONFIGURATION;
      --查看参数文件的状态
      DGMGRL> SHOW CONFIGURATION;
      #创建新的参数文件CONFIGURATION:
      DGMGRL> create configuration 'dg_broker' as primary database is 'uni_dg2' connect identifier is uni_dg2;
      --添加备库:
      DGMGRL> add database 'uni_dg1' as connect identifier is uni_dg1 maintained as physical;
      --启用参数文件:
      DGMGRL> ENABLE CONFIGURATION;
      --查看参数文件的状态
      DGMGRL> SHOW CONFIGURATION;
      --启用备库
      DGMGRL> ENABLE DATABASE 'uni_dg1'
      
      --查看数据库详情
      DGMGRL> show database verbose uni_dg1;
      DGMGRL> show database verbose uni_dg2;
      
      

      具体执行过程:

      
      DGMGRL> create configuration 'dg_broker' as primary database is 'uni_dg2' connect identifier is uni_dg2;
      Configuration "dg_broker" created with primary database "uni_dg2"
      DGMGRL> 
      DGMGRL> 
      DGMGRL> add database 'uni_dg1' as connect identifier is uni_dg1 maintained as physical;
      Database "uni_dg1" added
      DGMGRL> ENABLE CONFIGURATION;
      Enabled.
      DGMGRL> SHOW CONFIGURATION;
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg2 - Primary database
          uni_dg1 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      DGMGRL> ENABLE DATABASE 'uni_dg1'
      Enabled.
      DGMGRL> show database verbose uni_dg1;
      
      Database - uni_dg1
      
        Role:            PHYSICAL STANDBY
        Intended State:  APPLY-ON
        Transport Lag:   0 seconds
        Apply Lag:       0 seconds
        Real Time Query: ON
        Instance(s):
          orcl
      
        Properties:
          DGConnectIdentifier             = 'uni_dg1'
          ObserverConnectIdentifier       = ''
          LogXptMode                      = 'ASYNC'
          DelayMins                       = '0'
          Binding                         = 'OPTIONAL'
          MaxFailure                      = '0'
          MaxConnections                  = '1'
          ReopenSecs                      = '300'
          NetTimeout                      = '30'
          RedoCompression                 = 'DISABLE'
          LogShipping                     = 'ON'
          PreferredApplyInstance          = ''
          ApplyInstanceTimeout            = '0'
          ApplyParallel                   = 'AUTO'
          StandbyFileManagement           = 'AUTO'
          ArchiveLagTarget                = '0'
          LogArchiveMaxProcesses          = '4'
          LogArchiveMinSucceedDest        = '1'
          DbFileNameConvert               = '/u01/oracle/tools/oracle11g/oradata/orcl, /u01/oracle/tools/oracle11g/oradata/orcl'
          LogFileNameConvert              = '/u01/oracle/tools/oracle11g/oradata/orcl, /u01/oracle/tools/oracle11g/oradata/orcl'
          FastStartFailoverTarget         = ''
          StatusReport                    = '(monitor)'
          InconsistentProperties          = '(monitor)'
          InconsistentLogXptProps         = '(monitor)'
          SendQEntries                    = '(monitor)'
          LogXptStatus                    = '(monitor)'
          RecvQEntries                    = '(monitor)'
          HostName                        = 'dbprimary07'
          SidName                         = 'orcl'
          StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbprimary07)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=uni_dg1_DGMGRL)(INSTANCE_NAME=orcl)(SERVER=DEDICATED)))'
          StandbyArchiveLocation          = '/u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/arch'
          AlternateLocation               = ''
          LogArchiveTrace                 = '0'
          LogArchiveFormat                = '%t_%s_%r.dbf'
          TopWaitEvents                   = '(monitor)'
      
      Database Status:
      SUCCESS
      
      DGMGRL> 
      DGMGRL> show database verbose uni_dg2;
      
      Database - uni_dg2
      
        Role:            PRIMARY
        Intended State:  TRANSPORT-ON
        Instance(s):
          orcl
      
        Properties:
          DGConnectIdentifier             = 'uni_dg2'
          ObserverConnectIdentifier       = ''
          LogXptMode                      = 'ASYNC'
          DelayMins                       = '0'
          Binding                         = 'optional'
          MaxFailure                      = '0'
          MaxConnections                  = '1'
          ReopenSecs                      = '300'
          NetTimeout                      = '30'
          RedoCompression                 = 'DISABLE'
          LogShipping                     = 'ON'
          PreferredApplyInstance          = ''
          ApplyInstanceTimeout            = '0'
          ApplyParallel                   = 'AUTO'
          StandbyFileManagement           = 'AUTO'
          ArchiveLagTarget                = '0'
          LogArchiveMaxProcesses          = '4'
          LogArchiveMinSucceedDest        = '1'
          DbFileNameConvert               = '/u01/oracle/tools/oracle11g/oradata/orcl, /u01/oracle/tools/oracle11g/oradata/orcl'
          LogFileNameConvert              = '/u01/oracle/tools/oracle11g/oradata/orcl, /u01/oracle/tools/oracle11g/oradata/orcl'
          FastStartFailoverTarget         = ''
          StatusReport                    = '(monitor)'
          InconsistentProperties          = '(monitor)'
          InconsistentLogXptProps         = '(monitor)'
          SendQEntries                    = '(monitor)'
          LogXptStatus                    = '(monitor)'
          RecvQEntries                    = '(monitor)'
          HostName                        = 'dbstandby08'
          SidName                         = 'orcl'
          StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbstandby08)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=uni_dg2_DGMGRL)(INSTANCE_NAME=orcl)(SERVER=DEDICATED)))'
          StandbyArchiveLocation          = '/u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/arch'
          AlternateLocation               = ''
          LogArchiveTrace                 = '0'
          LogArchiveFormat                = '%t_%s_%r.dbf'
          TopWaitEvents                   = '(monitor)'
      
      Database Status:
      SUCCESS
      
      DGMGRL> 
      
      

      6.5、查看主备状态

      DGMGRL> show configuration;
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg2 - Primary database
          uni_dg1 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      

      6.6、测试切换

      当前新主库uni_dg2 switchover 到uni_dg1,让新备库uni_dg1再变成主库

      DGMGRL>  switchover to uni_dg1;
      Performing switchover NOW, please wait...
      New primary database "uni_dg1" is opening...
      Operation requires shutdown of instance "orcl" on database "uni_dg2"
      Shutting down instance "orcl"...
      ORA-01109: database not open
      
      Database dismounted.
      ORACLE instance shut down.
      Operation requires startup of instance "orcl" on database "uni_dg2"
      Starting instance "orcl"...
      ORACLE instance started.
      Database mounted.
      Database opened.
      Switchover succeeded, new primary is "uni_dg1"
      DGMGRL> 
      ###提示:==此次切换uni_dg2库 不需要手动重启 ==
      

      操作过程中可能遇到的报错:

      DGMGRL> create configuration 'dg_broker' as primary database is 'uni_dg2' connect identifier is uni_dg2;
      Error: 
      ORA-16525: the Data Guard broker is not yet available
      ORA-06512: at "SYS.DBMS_DRS", line 157
      ORA-06512: at line 1
      

      **说明uni_dg2库没开启 Data Guard broker 参数,需要执行下面指令开启 **

      SQL > alter system set dg_broker_start=true scope=both;
      

      6.7、切换完成后重新确认主备状态

      主备库服务器上都执行操作以下指令

      dgmgrl sys/oracle@uni_dg1 "SHOW CONFIGURATION;"
      dgmgrl sys/oracle@uni_dg2 "SHOW CONFIGURATION;"
      
      select database_role,protection_mode,protection_level,open_mode from v$database;
      

      下面时具体执行过程:

      [oracle@dbstandby08 arch]$ dgmgrl sys/oracle@uni_dg1 "SHOW CONFIGURATION;"
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg1 - Primary database
          uni_dg2 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      
      [oracle@dbstandby08 arch]$ dgmgrl sys/oracle@uni_dg2 "SHOW CONFIGURATION;"
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg1 - Primary database
          uni_dg2 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      [oracle@dbprimary07 admin]$ dgmgrl sys/oracle@uni_dg1 "SHOW CONFIGURATION;"
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg1 - Primary database
          uni_dg2 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      

      dbprimary07机器操作:

      SQL> set line 300 pages 300
      SQL> 
      SQL> select database_role,protection_mode,protection_level,open_mode from v$database;
      
      DATABASE_ROLE                                    PROTECTION_MODE                                              PROTECTION_LEVEL                                             OPEN_MODE
      ------------------------------------------------ ------------------------------------------------------------ ------------------------------------------------------------ ------------------------------------------------------------
      PRIMARY                                          MAXIMUM PERFORMANCE                                          MAXIMUM PERFORMANCE                                          READ WRITE
      
      SQL> 
      
      

      dbprimary08机器操作:

      SQL> set line 300 pages 300;
      SQL> select database_role,protection_mode,protection_level,open_mode from v$database;
      
      DATABASE_ROLE                                    PROTECTION_MODE                                              PROTECTION_LEVEL                                             OPEN_MODE
      ------------------------------------------------ ------------------------------------------------------------ ------------------------------------------------------------ ------------------------------------------------------------
      PHYSICAL STANDBY                                 MAXIMUM PERFORMANCE                                          MAXIMUM PERFORMANCE                                          READ ONLY WITH APPLY
      
      SQL> 
      
      

      6.8 当前主库写入数据测试同步

      当前主库dbprimary07写入数据

      CREATE TABLE test (
          employee_id NUMBER PRIMARY KEY,
          first_name VARCHAR2(50),
          last_name VARCHAR2(50),
          hire_date DATE,
          salary NUMBER
      );
      
      INSERT INTO test(employee_id, first_name, last_name, hire_date, salary)
      VALUES (1, 'John', 'Doe', '01-Jan-2021', 001);
      commit;
      

      操作过程:

      SQL> CREATE TABLE test (
        2      employee_id NUMBER PRIMARY KEY,
        3      first_name VARCHAR2(50),
        4      last_name VARCHAR2(50),
        5      hire_date DATE,
        6      salary NUMBER
        7  );
      
      INSERT INTO test(employee_id, first_name, last_name, hire_date, salary) VALUES (1, 'John', 'Doe', '01-Jan-2021', 001);
      
      Table created.
      
      SQL> SQL>   2  
      1 row created.
      
      SQL> commit;
      
      Commit complete.
      
      SQL> select * from test;
      
      EMPLOYEE_ID FIRST_NAME
      ----------- ------------------------------------------------------------------------------------------------------------------------------------------------------
      LAST_NAME                                                                                                                                              HIRE_DATE           SALARY
      ------------------------------------------------------------------------------------------------------------------------------------------------------ --------------- ----------
                1 John
      Doe                       
      
      

      当前备库库dbstandby08上确认数据已经同步完成:

      
      SQL> select * from test;
      
      EMPLOYEE_ID FIRST_NAME
      ----------- ------------------------------------------------------------------------------------------------------------------------------------------------------
      LAST_NAME                                                                                                                                              HIRE_DATE              SALARY
      ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------ ----------
                1 John
      Doe                                                                                                                                                    01-JAN-21                   1
      
      SQL>
      

      6.8、第二次手动切换到uni_dg2 让uni_dg2重新变为主库

      切换前查看当前的库信息:

      
      [oracle@dbprimary07 dbs]$ dgmgrl sys/oracle@uni_dg2 
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      DGMGRL> 
      DGMGRL> 
      DGMGRL>  show configuration verbose;
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg1 - Primary database
          uni_dg2 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      

      #switchover to uni_dg2;

      下面是具体的执行过程:

      DGMGRL> 
      DGMGRL>  switchover to uni_dg2;
      Performing switchover NOW, please wait...
      New primary database "uni_dg2" is opening...
      Operation requires shutdown of instance "orcl" on database "uni_dg1"
      Shutting down instance "orcl"...
      ORA-01109: database not open
      
      Database dismounted.
      ORACLE instance shut down.
      Operation requires startup of instance "orcl" on database "uni_dg1"
      Starting instance "orcl"...
      Unable to connect to database
      ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
      
      Failed.
      Warning: You are no longer connected to ORACLE.
      
      Please complete the following steps to finish switchover:
              start up instance "orcl" of database "uni_dg1"
      
      

      查看数据库状态:

      dgmgrl sys/oracle@uni_dg1 'show configuration;'
      dgmgrl sys/oracle@uni_dg2 'show configuration;'
      
      
      [oracle@dbprimary07 dbs]$ dgmgrl sys/oracle@uni_dg1 'show configuration;'
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      Error: 
      ORA-01034: ORACLE not available
      Process ID: 0
      Session ID: 0 Serial number: 0
      
      Configuration details cannot be determined by DGMGRL
      [oracle@dbprimary07 dbs]$ 
      [oracle@dbprimary07 dbs]$ 
      [oracle@dbprimary07 dbs]$ 
      [oracle@dbprimary07 dbs]$ dgmgrl sys/oracle@uni_dg2 'show configuration;'
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      
      Configuration - dg_broker
      
        Protection Mode: MaxPerformance
        Databases:
          uni_dg2 - Primary database
            Error: ORA-16778: redo transport error for one or more databases
      
          uni_dg1 - Physical standby database
            Error: ORA-01034: ORACLE not available
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      ERROR
      
      
      [oracle@dbprimary07 dbs]$ ps -ef|grep ora_
      oracle    47068  41514  0 22:02 pts/5    00:00:00 grep --color=auto ora_
      
      ####提示uni_dg1 数据库不可用,需要手动重启原主库####
      
      

      机器dbstandby08操作查看数据库状态:

      
      dgmgrl sys/oracle@uni_dg2 "SHOW CONFIGURATION;"
      dgmgrl sys/oracle@uni_dg1 "SHOW CONFIGURATION;"
      
      select database_role,protection_mode,protection_level,open_mode from v$database;
      
      

      下面是具体的执行过程:

      [oracle@dbstandby08 arch]$ dgmgrl sys/oracle@uni_dg2 "SHOW CONFIGURATION;"
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      
      Configuration - dg_broker
      
       Protection Mode: MaxPerformance
       Databases:
         uni_dg2 - Primary database
         uni_dg1 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      [oracle@dbstandby08 arch]$ 
      [oracle@dbstandby08 arch]$ dgmgrl sys/oracle@uni_dg1 "SHOW CONFIGURATION;"
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      
      Configuration - dg_broker
      
       Protection Mode: MaxPerformance
       Databases:
         uni_dg2 - Primary database
         uni_dg1 - Physical standby database
      
      Fast-Start Failover: DISABLED
      
      Configuration Status:
      SUCCESS
      
      SQL> set line 300 pages 300
      SQL> 
      SQL> select database_role,protection_mode,protection_level,open_mode from v$database;
      
      DATABASE_ROLE                                    PROTECTION_MODE                                              PROTECTION_LEVEL                                             OPEN_MODE
      ------------------------------------------------ ------------------------------------------------------------ ------------------------------------------------------------ ------------------------------------------------------------
      PRIMARY                                          MAXIMUM PERFORMANCE                                          MAXIMUM PERFORMANCE                                          READ WRITE
      
      SQL> 
      

      再次切换到uni_dg1,让uni_dg1再次变为主库时,uni_dg2不需要手动进行重启

      
      [oracle@dbstandby08 dbs]$ dgmgrl sys/oracle@uni_dg1 
      DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
      
      Copyright (c) 2000, 2009, Oracle. All rights reserved.
      
      Welcome to DGMGRL, type "help" for information.
      Connected.
      DGMGRL> 
      DGMGRL>  switchover to uni_dg1;
      Performing switchover NOW, please wait...
      New primary database "uni_dg1" is opening...
      Operation requires shutdown of instance "orcl" on database "uni_dg2"
      Shutting down instance "orcl"...
      ORA-01109: database not open
      
      Database dismounted.
      ORACLE instance shut down.
      Operation requires startup of instance "orcl" on database "uni_dg2"
      Starting instance "orcl"...
      ORACLE instance started.
      Database mounted.
      Database opened.
      Switchover succeeded, new primary is "uni_dg1"
      DGMGRL> 
      
      

      以上就是整个DG_broker工具管理切换DG主备切换的过程,可以看到切换过程还是非常丝滑的,应用和维护还是很方便的。

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/wujianwei/12232547,作者:运维之美,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:pt-online-schema-change使用

      下一篇:【设计模式之美】策略模式方法论:解耦策略的定义、创建和使用

      相关文章

      2025-05-09 08:50:42

      底部导航切换页面

      底部导航切换页面

      2025-05-09 08:50:42
      切换 , 导航
      2025-04-15 09:20:22

      Java面试题:如何实现线程循环切换?

      在Java中,线程是程序中执行的单元,它允许我们同时执行多个任务。线程的切换是指在运行时,操作系统会让不同的线程交替执行,以达到充分利用 CPU 资源的目的。

      2025-04-15 09:20:22
      ExecutorService , sleep , yield , 切换 , 执行 , 方法 , 线程
      2025-03-27 09:34:39

      阻塞与唤醒:多线程编程的神秘面纱

      在多线程编程中,线程状态切换是一个非常关键的概念。了解线程状态切换的原理,对于编写高效、稳定的多线程程序至关重要。

      2025-03-27 09:34:39
      切换 , 多线程 , 状态 , 等待 , 线程
      2025-03-27 09:34:39

      数据库小白变大咖:社招面试MySQL高可用问题解决攻略!

      MySQL作为一个强大而受欢迎的关系型数据库管理系统,在实际应用中经常要求具备高可用性,以确保系统稳定运行。

      2025-03-27 09:34:39
      MySQL , 切换 , 复制 , 服务器 , 高可用性
      2025-03-12 09:34:29

      JavaScript实现自动轮播特效

      JavaScript实现自动轮播特效

      2025-03-12 09:34:29
      JavaScript , 代码 , 切换 , 图片 , 自动
      2025-03-11 09:35:24

      Android ArchTaskExecutor快速线程切换

      Android ArchTaskExecutor快速线程切换

      2025-03-11 09:35:24
      Android , 切换 , 线程
      2025-02-26 07:20:49

      【协程】协程有什么用?什么是协程?

      【协程】协程有什么用?什么是协程?

      2025-02-26 07:20:49
      CPU , 切换 , 协程 , 并发 , 线程
      2025-02-19 09:02:32

      【协程】协程与线程、线程与进程的区别

      每个进程都有自己的独立内存空间,进程比较重量,占据独立的内存,所以上下文进程间的切换开销(栈、寄存器、虚拟内存、文件句柄等)比较大,但相对比较稳定安全。

      2025-02-19 09:02:32
      上下文 , 切换 , 协程 , 寄存器 , 线程 , 资源 , 进程
      2024-12-27 08:03:29

      主备switchover切换,并将新主库IP更换成旧主库IP

      主备switchover切换,并将新主库IP更换成旧主库IP

      2024-12-27 08:03:29
      IP , 主库
      2024-12-16 08:18:54

      物理备库在切换为主库时报错ORA-01577—主库已切换为备库

      物理备库在切换为主库时报错ORA-01577—主库已切换为备库

      2024-12-16 08:18:54
      ORA , 主库 , 切换
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5252502

      查看更多

      最新文章

      底部导航切换页面

      2025-05-09 08:50:42

      主备switchover切换,并将新主库IP更换成旧主库IP

      2024-12-27 08:03:29

      物理备库在切换为主库时报错ORA-01577—主库已切换为备库

      2024-12-16 08:18:54

      一文读懂Uniapp的setStorage、setStorageSync、getStorage以及getStorageSync(附Demo)

      2024-12-11 06:20:18

      一文读懂ElementUI中的toggleSelection()函数

      2024-12-11 06:20:18

      详细分析uni-app中的页面路由基本知识(附Demo)

      2024-12-10 07:14:31

      查看更多

      热门文章

      windows安装多版本python和切换默认版本

      2024-11-25 09:13:09

      一文读懂Uniapp的setStorage、setStorageSync、getStorage以及getStorageSync(附Demo)

      2024-12-11 06:20:18

      一文读懂ElementUI中的toggleSelection()函数

      2024-12-11 06:20:18

      详细分析uni-app中的页面路由基本知识(附Demo)

      2024-12-10 07:14:31

      物理备库在切换为主库时报错ORA-01577—主库已切换为备库

      2024-12-16 08:18:54

      主备switchover切换,并将新主库IP更换成旧主库IP

      2024-12-27 08:03:29

      查看更多

      热门标签

      linux java python javascript 数组 前端 docker Linux vue 函数 shell git 节点 容器 示例
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      详细分析uni-app中的页面路由基本知识(附Demo)

      物理备库在切换为主库时报错ORA-01577—主库已切换为备库

      一文读懂ElementUI中的toggleSelection()函数

      windows安装多版本python和切换默认版本

      一文读懂Uniapp的setStorage、setStorageSync、getStorage以及getStorageSync(附Demo)

      主备switchover切换,并将新主库IP更换成旧主库IP

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号