oracle 单实例DG(闪回技术四)
一,flashback
Oracle Flashback技术是一组数据库特性,它可以让你查看数据库对象的过去状态,或者将数据库对象返回到以前的状态,而无需使用基于时间点的介质恢复。根据数据库的变化,闪回特性可以更快的回退不想要的变化,而且相比介质恢复,对数据库可用性产生的影响更小。
- 执行回到过去的数据查询
- 执行显示对数据库更改的详细历史的元数据的查询
- 将表或行恢复到之前的时间点
- 自动追踪和归档事务数据的更改
- 当数据库保持在线状态时,回退事务和与它相关的事务
flashback--闪回技术有闪回表、闪回删除、闪回查询、闪回事务查询、闪回事务、闪回数据库、闪回数据归档。其中,闪回查询、闪回事务查询用来“观察”过去;闪回数据归档并不是一个独立的功能,其功能是扩展闪回查询的时间窗口;闪回表、闪回删表能够以表为单位“回到”过去;闪回事务能够以事务为单位“回到”过去;闪回数据库能够以数据库为单位“回到”过去。
二,开启功能
备库操作:
01,关闭实时同步
alter database recover managed standby database cancel;
02, 关闭数据库后开启到mount状态
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global Area 2505338880 bytes Fixed Size 2255832 bytes Variable Size 603980840 bytes Database Buffers 1879048192 bytes Redo Buffers 20054016 bytes Database mounted. SQL>
03,开始flashback
SQL> alter database flashback on; Database altered.
SQL> alter database open; Database altered. SQL> alter database recover managed standby database using current logfile disconnect from session; Database altered.
04,查看闪回是否开启
SQL> select open_mode,log_mode,flashback_on from v$database; OPEN_MODE LOG_MODE FLASHBACK_ON -------------------- ------------ ------------------ READ WRITE ARCHIVELOG YES
已经开启了
三,测试闪回技术
测试前两个库开启闪回 为保后续恢复
主库不能访问的话操作就再备库完成:
SQL>
alter database recover managed standby database cancel; 停止实时同步
alter database recover managed standby database finish force;
select database_role from v$database;
alter database commit to switchover to primary;
alter database open;
select switchover_status,database_role,open_mode from v$database;
备库已经变为主库了
四, 主库恢复
上面提到了failover,这种情形是当主库真正出现异常之后,才会执行的操作,那么我们执行过failover 之后,如何在重新构建DG,这里我们利用flashback database来重构
再新的主库查询
select to_char(standby_became_primary_scn) from v$database;
现在再原来临时主库执行命令:
shutdown immediate
startup mount
flashback database to scn 1064562; -----这个为新主库查询的值
alter database convert to physical standby;
shutdown immediate
startup
alter database recover managed standby database using current logfile disconnect from session;
查询状态
select process,status,sequence# from v$managed_standby;
查询归档同步
相关文章
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
- ORACLE 11G 单实例 磁盘文件系统 DG 归档日志删除脚本 基于RED HAT LINUX 5.3 X86 64BIT
- Oracle数据库误操作回滚到指定的时间点方法
- oracle通过plsql导入dmp数据文件
- 【转】Oracle 自定义函数语法与实例
- Oracle 报错:PLS-00201: 必须声明标识符
- [转]Oracle 执行计划(Explain Plan) 说明
- Oracle的KILL锁表及清除session方法
- oracle多实例的启动与关闭
- oracle的正则表达式
- oracle mysql sqlserver 基本操作命令
- 《Oracle SQL疑难解析》——1.16 基于条件的插入或修改
- springboot集成flowable oracle数据库版本报错
- Oracle实例与Oracle数据库
- oracle共享与专用模式的动态转换及区别(转载)
- [Oracle 工程师手记] 如何查看 FRA 的使用率
- oracle 多实例部署
- SQL为王:oracle标量子查询和表连接改写
- Oracle学习笔记:启停数据库实例、初始化参数
- Oracle实例与数据库的概念详细解释
- 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节
- ORACLE 11G在相同的linuxserver从实施例1满库到实例2上
- Linux下Oracle的启动登陆命令、单实例启动、多实例启动
- Oracle 分页查询
- Oracle 建表语句的关键字详解