当前位置: 首页 > news >正文

Oracle主从incarnation不一致问题解决

问题描述

在建立ADG主从库时,有时会出现主从化身不一致的问题,导致从库只能同步日志,而无法对日志进行应用。

2025年8月9日,历经36个小时的同步,ADG终于是搭建好了。

2025年8月11日,发现从库停止了日志应用,并比主库多了一个化身

从库已经从READ ONLY WITH APPLY 变回了 READ ONLY状态

查看当前数据库化身

list incarnation;

思路:

  1. 核对主从归档日志
  2. 通过主库重建控制文件
  3. 从库重新开启日志应用

解决步骤:

  1. 关闭从库

    shutdown immediate;
  2. 检查归档日志,必须与主库一致

    查看归档日志目录:

    SHOW PARAMETER LOG_ARCHIVE_DEST;

    这次我的归档日志就少了一个,需要从主库传一个下来

  3. 主库生成standby控制文件,并传输至备库

    ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/standby_controlfile.ctl';

    将生成的控制文件利用scp传输到备库

    scp /tmp/standby_controlfile.ctl oracle@192.168.0.14:/home/app/oracle/12.2.0/oradata/bserpdbdgol/

  4. 备库修改配置文件

    把从库原来的.ctl文件删掉

    在配置文件中,把配置文件的路径也修改了

    vim initbserpdb1.ora*.control_files='/home/app/oracle/12.2.0/oradata/bserpdbdgol/standby_controlfile.ctl'

  5. 备库利用配置文件启动到nomount状态

    startup pfile='/home/app/oracle/12.2.0/db/dbs/initbserpdb1.ora' nomount;
  6. 切换从库为mount状态

    alter database mount;
  7. 确认从库角色为STANDBY后开库

    SQL> SELECT DATABASE_ROLE FROM V$DATABASE;DATABASE_ROLE
    ----------------
    PHYSICAL STANDBY--启动MRP0日志应用
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;Database altered.--查看MRO0进程
    SQL> SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS FROM V$MANAGED_STANDBY;PROCESS   STATUS	  THREAD#  SEQUENCE#	 BLOCK#     BLOCKS
    --------- ------------ ---------- ---------- ---------- ----------
    ARCH	  CLOSING		1      60284	 151552       1798
    DGRD	  ALLOCATED		0	   0	      0 	 0
    DGRD	  ALLOCATED		0	   0	      0 	 0
    ARCH	  CONNECTED		0	   0	      0 	 0
    ARCH	  CONNECTED		0	   0	      0 	 0
    ARCH	  CONNECTED		0	   0	      0 	 0
    RFS	    IDLE			0	   0	      0 	 0
    RFS	    RECEIVING		1      60283	 176129       2048
    RFS	    IDLE			0	   0	      0 	 0
    MRP0	  WAIT_FOR_GAP		1      60255	      0 	 0
    RFS	    RECEIVING		1      60255	  63489       204811 rows selected.--查询数据库模式
    SQL> select open_mode from v$database; OPEN_MODE
    --------------------
    MOUNTED
  8. 从库模式切换

    以上的步骤已经恢复了DG库的同步与日志应用,但却只能作为物理备库,无法提供查询服务

    从库仅用于日志应用(不对外提供查询服务),MOUNTED 是正常的运行模式

    需要从库同时支持日志应用和只读查询,则可将其切换为 READ ONLY WITH APPLY 模式

    --开库
    alter database open;--查看模式
    SQL> select open_mode from v$database; 
    OPEN_MODE
    --------------------
    READ ONLY--启动日志应用进程
    SQL> alter database recover managed standby database disconnect; Database altered.--验证模式SQL> select open_mode from v$database; OPEN_MODE
    --------------------
    READ ONLY WITH APPLY--查看从库化身
    RMAN> list incarnation;List of Database Incarnations
    DB Key  Inc Key DB Name  DB ID            STATUS  Reset SCN  Reset Time
    ------- ------- -------- ---------------- --- ---------- ----------
    1       1       BSERPDB1 3574684876       PARENT  1890391    022-01-20 12.47.23
    2       2       BSERPDB1 3574684876       PARENT  9370202    022-03-15 09.34.13
    3       3       BSERPDB1 3574684876       CURRENT 11641114   022-03-31 10.34.18

http://www.dtcms.com/a/326293.html

相关文章:

  • ComfyUI安装
  • 【96页PPT】华为IPD流程管理详细版(附下载方式)
  • 强化学习常用数据集
  • HBase BlockCache:LRU Cache
  • Qt界面优化
  • TD-IDF的一些应用
  • 降压型DCDC电源芯片推荐-芯伯乐XBL4001 40V/5A
  • Python3.10 + Firecrawl 下载 Markdown 文档:构建高效通用文章爬虫
  • 深度学习 --- 迁移学习以及onnx推理
  • 自建Web应用防火墙(WAF)
  • 前端面试:promise...then与asnyc ...await
  • 华为Atlas 200 DK 板卡使用技巧记录(一)修改板卡IP
  • Pytest项目_day12(yield、fixture的优先顺序)
  • CobaltStrike钓鱼鱼饵制作的方式(chm、doc、execl、exe、powshell 上线cs)
  • [特殊字符] OpenCV图像预处理与ResNet-50深度学习分类实战
  • 元数据管理与数据治理平台:Apache Atlas 关系搜索 Relationship Search
  • AI产品经理手册(Ch12-16)AI Product Manager‘s Handbook学习笔记
  • 使用纯NumPy实现回归任务:深入理解机器学习本质
  • C++安装使用eigen库时出现warning C4819问题的解决方案
  • 【网络运维】Linux:LNMP 项目实践
  • NodeJs》》url地址参数 解析 URLSearchParams querystring
  • vscode的wsl环境,怎么打开linux盘的工程?
  • CSS彩虹七色十六进制值
  • langmem
  • 排序与查找,简略版
  • 《算法导论》第 18 章 - B 树
  • linux 秒 安装谷歌浏览器 区分ubuntu和centos 给python爬取网站使用
  • Haystack:面向大模型应用的模块化检索增强生成(RAG)框架
  • 简单Modules 的配置与管理,灵活应对多版本软件环境的需求。
  • 基于SpringBoot+Uniapp的血压监控小程序(Echarts图形化分析)