首页 > 其他 > 详细

DataGuard模拟FailOver实验

时间:2014-11-11 02:32:22      阅读:320      评论:0      收藏:0      [点我收藏+]
DataGuard FailOver
模拟主库实例已经崩溃,但是数据库文件可用,比如数据库文件存放在磁盘阵列上..
1.在一个物理StandBy最大性能的环境下,中断备库的监听器
2.主库切换联机重做日志(模拟主库的日志不能传送到备库的场景)
SQL> alter system archive log current;
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> /
System altered.

3.停止主库的实例
SQL> shutdown abort;
ORACLE instance shut down.

4.备库查看GAP,和尚未收到归档文件的信息
查看视图,没有GAP的归档
SQL> select * from v$archive_gap;
no rows selected

查看备库应用归档的信息
备库已经应用到97号归档
select sequence#,name from v$archived_log;
bubuko.com,布布扣

5.登录主库服务器,将尚未传送到备库的归档通过scp传输到备库
一般来说,服务器故障也是有可能得到磁盘上的文件的.
比如
  使用了磁盘阵列,通过网络存储数据
  仅仅是数据库故障,而主机可以使用
  主机不可用,但是可以恢复磁盘上的数据
  等等
登录主库所在的服务器
可以看到98,99,100号归档文件还在
bubuko.com,布布扣
查看联机重做日志,通过最后修改时间,找到最后的redolog文件--redo02.log
bubuko.com,布布扣
将这些文件通过SCP传输到备库
[lihuilin@lihuilin orcl]$ scp redo02.log root@mysql1:/tmp

[lihuilin@lihuilin 2014_11_10]$ scp o1_mf_1_{98,99,100}*.arc root@mysql1:/tmp

6.备库注册归档日志,应用redolog文件
备库注册缺失的归档日志文件
alter database register logfile ‘/tmp/o1_mf_1_98_b5z6nyjk_.arc‘;
alter database register logfile ‘/tmp/o1_mf_1_99_b5z6o2nd_.arc‘;
alter database register logfile ‘/tmp/o1_mf_1_100_b5z6o498_.arc‘;
备库中止恢复模式
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
备库进行恢复
recover standby database until cancel;
看到如下内容,输入redolog文件的位置
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
最后恢复完成
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/tmp/redo02.log
Log applied.
Media recovery complete.

7.激活备库
备库输入命令
alter database activate standby database;
alter database open;

查看备库现在的状态,FailOver已经完成.
SQL> select database_role,open_mode from v$database;

DATABASE_ROLE     OPEN_MODE
---------------- --------------------
PRIMARY      READ WRITE

DataGuard模拟FailOver实验

原文:http://blog.itpub.net/29254281/viewspace-1326680/

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!