【转载】Oracle 数据库主从切换整理
2017-09-21 08:51
447 查看
oracle数据库data guard 主库从库切换有以下几种方式:
1.switchover切换
有准备的、计划之中的切换,通常是系统升级、数据迁移等常态任务–切换的时候,先主后备
将原standby数据库改为MAXIMIZE PERFORMANCE (这个是默认值,先检查一下,如果是就不用切换了)
alter database set standby database to maximize performance;
1) 检查切换是否可行
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
TO STANDBY
1 row selected
–据说TO STANDBY、SESSION ACTIVE都可以
2) 切换原主库为备库
SQL> alter database commit to switchover to physical standby ;
若是SESSION ACTIVE状态,带上with session shutdown
SQL> alter database commit to switchover to physical standby with session shutdown ;
3)关闭原主库数据库,启动为standby模式
–如果设置了remote_archive_enable=’SEND’,要修改成’RECEIVE’
SQL> alter database set remote_archive_enable=’SEND’ scope=both;
SQL> shutdown immediate;
SQL> startup nomount;
SQL> alter database mount standby database;
4 )检查原主库的切换结果
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
SWITCHOVER PENDING
1 row selected
5)将原备库切换成主库
SQL>alter database commit to switchover to primary;
如果出错为ORA-16139: 需要介质恢复,则执行
SQL>alter database recover managed standby database finish force;
然后继续执行
SQL>alter database commit to switchover to primary;
6)关闭原备库、重启
SQL> shutdown immediate;
SQL> startup;
2.Failover切换
用于意料之外的突发情况,比如异常掉电、自然灾难等等。1、 检查备库日志是否完成所有可用日志恢复
检查备库alert日志,查看所有可用的日志是否reply完成,完成后即可操作下面步骤。
2、 终止日志reply操作
SQL> alter database recover managed standby database cancel;
Database altered.
SQL> alter database recover managed standby database finish;
Database altered
3、 检查数据库的状态为“ TO PRIMARY”即可(TO PRIMARY说明是备库)
SQL> select open_mode, switchover_status from v$database;
OPEN_MODE SWITCHOVER_STATUS
READ ONLY TO PRIMARY
4、 切换备库为主库角色
SQL> ALTER DATABASE ACTIVATE PHYSICAL STANDBY DATABASE;
SQL> alter database commit to switchover to primary with session shutdown;
Database altered.
SQL> select open_mode from v$database;
OPEN_MODE
MOUNTED
SQL> alter database open;
Database altered.
注意切换完成以后必须自行添加临时文件,当我们在Primary端添加一个临时表空间,Standby端虽然不能创建出临时文件,但是临时表空间的信息是联动的带入的
3.自动切换DG_Broker
参考这篇文章:http://blog.csdn.net/shiyu1157758655/article/details/55504026内容来源1:oracle dg主从切换
内容来源2:Oracle Data Guard详细配置过程
内容来源3:ORACLE数据库Dataguard dg broker 3大模式相互切换 主备库互相切换
把数据库从数据同步和只读打开状态切换到快照备用状态,只需要在备用数据库上执行Alter database convert to snapshot standby;而把数据库从快照备用切换会只读同步状态,只需要执行Alter database convert to physical standby就可以了
相关文章推荐
- [转载]不同服务器数据库之间的数据操作--复制同步(整理版)
- Oracle 数据库的备份与恢复(转载)
- ORACLE如何使用DBLINK连接另一个数据库[整理]
- 教你如何克隆Oracle 10g数据库,冷备份方式(图文版)(转载)
- 在 Oracle 数据库上使用 Visual Studio 2005 或 2008 构建 .NET 应用程序(官方文章转载)
- MHA实现mysql主从数据库手动切换的方法
- oracle笔记整理五[创建数据库]
- Oracle 12c Non CDB 数据库 切换成 CDB 测试
- Oracle 数据库启动与关闭 各种方式详解整理
- ubuntu14.04、CentOS安装oracle 11g数据库【转载】
- 在 Linux x86 上安装 Oracle 数据库 10g(转载自官方)
- [转载]数据库存储图片(MSSQL/ORACLE/ACCESS
- 【Oracle】Oracle操作数据库安装安装及常用名命令【转载】
- Oracle中关于数据库实例名与数据库服务名(转载)
- oracle中普通用户如何查看自己登录的数据库名称?这个用户与scott权限相同,无法切换到sys下面!没有权限查看v$database和v$instance
- 转载---ORACLE set和col命令的整理
- 数据库(学习整理)----2--关于Oracle用户权限的授权和收权
- oracle笔记整理六[数据库启动与关闭]
- 数据库(学习整理)----7--Oracle多表查询,三种join连接
- mysql主从数据库切换