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

数据库管理-第163期 19c重建ADG的两个方法(20240323

数据库管理163期 2024-03-23

  • 数据库管理-第163期 19c重建ADG的两个方法(20240323)
    • 1 ORA-08103
    • 2 新办法
      • 1 关闭MRP
      • 2 恢复备库
      • 3 其他操作
      • 4 启动备库
      • 5 启动MRP
    • 3 老办法
    • 4 预告
    • 总结

数据库管理-第163期 19c重建ADG的两个方法(20240323)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Associate: Database(Oracle与MySQL)
国内某科技公司 DBA总监
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家,OCM讲师
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭。

这周就写了两篇文章,之前还有些事没有记录下来,多写写吧。

1 ORA-08103

祖上X8那台Exadata也是和X9M一样,用的4台4U服务器+集中存储做的ADG备库,突然有一天,业务方说,从备库取的外部数据报了下面的错:

ORA-08103: object no longer exists

从DG Broker上看,同步没有报错,但是确实在备库,有些表就是不存在,而主库上则是正常的。在业务方暂时将外部读取转回了备库。为了减少外部数据拉取对主库的影响(其实影响不大,主要是这台跑的业务系统太重要了),没有时间去探求为啥会出现ORA-08103的问题,因此想着恢复一下。

2 新办法

在19c中有一种不用重建DG恢复数据的方法,简单点说就是就是通过网络增量恢复数据文件。这种方法适用于归档丢失产生GAP和其他一些问题。
具体操作流程如下:

1 关闭MRP

sqlplus> alter database recover managed standby database cancel;
or
DGMGRL> edit database dbdg set state='APPLY-OFF';

2 恢复备库

RMAN> recover standby database from service dbaas;

3 其他操作

可能需要重建standby logfile

4 启动备库

sqlplus> startup nomount
sqlplus> alter database mount standby database;
sqlplus> alter database open read only;

5 启动MRP

sqlplus> alter database recover managed standby database using current logfile disconnect from session;
or
DGMGRL> edit database dbdg set state='APPLY-ON';

然而用这种方式在open数据库的时候总在报错,显示使用过期的备份数据文件,无法恢复。多次尝试仍然没办法,因此只能用笨办法了。但是不得不说,这种方式至少从流程上,比全量重新同步快多了。

3 老办法

老办法当然是需要重建ADG,从duplicate target database开始,这里可以去《数据库管理-第八十期 Exadata to RAC(x86) ADG(20230605)》去看看。这里需要注意一点的是,在DG Broker中remove configuration后,执行以下操作:

alter system set dg_broker_start=false;

并删除下面两个参数配置的对应文件:

show parameter dg_broker_config_file1
show parameter dg_broker_config_file2asmcmd> rm +DATAC1/to/file1
asmcmd> rm +RECOC1/to/file2

然后再进行对应操作。

4 预告

2024数据技术嘉年华议程已出(详见https://www.modb.pro/dtc2024),欢迎新老朋友在现场欢聚一堂。
image.png

总结

其实本期技术内容,算是炒炒冷饭,也算是一个总结。
老规矩,知道写了些啥。

http://www.lryc.cn/news/326519.html

相关文章:

  • 8款常见的自动化测试开源框架
  • 【QT】:基本框架
  • 【Python】定时更换clashx工具
  • 2024年第16届大广赛新命题发布-爱华仕箱包
  • 前端理论总结(js)——闭包和内存泄漏
  • PHP页面如何实现设置独立访问密码
  • M1 mac安装 Parallels Desktop 18 激活
  • 嵌入式学习46——硬件相关2串口通信
  • 企业产品网络安全建设日志3月20
  • BRICK POP展示了有趣的链上游戏玩法与奖励
  • jetcache 2级缓存模式实现批量清除
  • 【MD】激光驱动原子动力学的全尺寸从头算模拟
  • 访问者模式(数据与行为解耦)
  • LeetCode:1319. 连通网络的操作次数(并查集 Java)
  • C++ STL教程
  • 系列学习前端之第 6 章:一文掌握 jQuery(熟悉即可)
  • python 中判断文件、目录是否存在的方法
  • Redis的安装与启动
  • WebGIS航线编辑器(无人机航线规划)
  • STEP 格式三维模型读取
  • Mora: Enabling Generalist Video Generation via A Multi-Agent Framework
  • [c++] 自写 MyString 类
  • 三、阅读器开发--4、阅读器目录、全文搜索功能开发
  • AMEYA360代理 | 江苏长晶科技FST2.0高性能 IGBT产品介绍
  • 基于springboot+vue+Mysql的网上图书商城
  • 阿里云服务器多少钱一个月?低至5元1个月
  • LeetCode第五天(442. 数组中重复的数据)
  • chatgpt正面案例合集
  • 今日讲讲路由配置
  • 【Rust】Shared-State Concurrency