设为首页 加入收藏

TOP

Oracle11gActiveDataGuard搭建、管理(六)
2015-07-24 10:37:29 来源: 作者: 【 】 浏览:3
Tags:Oracle11gActiveDataGuard 搭建 管理
oracle/app/oracle/oradata/orcl/test_tbs01.dbf

创建成功,但是此时备库数据文件的状态是“RECOVER”。

(2)查看备库用户及数据是否存在

方法同主库

主库上的变化已经即使的在备库上得到应用。

这便是Oracle 11g物理Active Data Guard实时查询(Real-time query)特性的体现。

?

****************** Active Data Guard 维护篇 **************************

Data Guard 启动\关闭顺序:

启动顺序:先standby ,后primary;

关闭顺序:先primary 后standby;

?

主库没有遗漏

SQL> select * from v$archive_gap;

查看日志是否能正确从主库同步到备用库,查看主备库

SQL> col standby_dest for a12

SQL> col archived for a10

SQL> col applied for a10

SQL> col status for a10

SQL> select sequence#,standby_dest,archived,applied,status from v$archived_log;

只需要保证2边sequence序列号一致且最新的app返回YES了,就说明备库接收到应用且恢复了。

正常操作关闭DG时,再次启动DG循序为:

1、先启动备库,再启动主库

$ sqlplus / as sysdba

SQL> startup

2、在备库执行命令:打开实时应用状态模式

SQL> alter database recover managed standby database using current logfile disconnect from session;

非正常情况下关闭DG后,重启DG时需要操作

1、检查主、备库的protection_level值,若其中一点为RESYNCHRONIZATION,说明实时同步已经有问题。

SQL> select db_unique_name,protection_mode,protection_level from v$database;

DB_UNIQUE_NAME PROTECTION_MODEPROTECTION_LEVEL

-------------------------------------------------- --------------------

ORCL_PRIMARY MAXIMUM AVAILABILITY RESYNCHRONIZATION

Oracle的data guard在主库设置为最大可用模式不能实现时,自动降级为最大性能模式。这样的结果使得日志同步不再实时。

解决方法(在主库执行):

1、根据最大可用模式的最低要求,将log_archive_dest_2调整为lgwr sync affirm。

SQL> show parameter log_archive_dest_2

若包含有lgwr sync affirm ,则执行

SQL> alter system switch logfile;

强制日志切换,不一定就归档当前的重做日志文件(若自动归档打开,就归档前的重做日志,若自动归档没有打开,就不归档当前重做日志。)

若无lgwr sync affirm ,则执行如下两句命令

SQL> alter system setlog_archive_dest_2 = 'service=orcl_standby lgwr sync affirm valid_for=(online_logfile,primary_role) db_unique_name=orcl_standby';

SQL> alter system switch logfile;

2、查看备库open_mode是否为“READ ONLY WITH APPLY”,否则执行后面一条语句,打开实时应用状态模式

SQL> select open_mode,database_role,db_unique_name from v$database;

OPEN_MODE DATABASE_ROLEDB_UNIQUE_NAME

-------------------- ----------------------------------------------

READ ONLY WITH APPLY PHYSICAL STANDBY orcl_standby

SQL> alter database recover managed standby database using current logfile disconnect from session;?

****************** 主备库切换 Switchover **************************

物理Data Guard角色转换步骤

Step 1 验证主库是否能执行角色转换到备库(原主库执行):

1.查看switchover 状态

SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

SWITCHOVER_STATUS

--------------------

TO STANDBY

附:A:switchover_status出现session active/not allowed

Step 2 开始把物理主库改变为物理备库(原主库执行)

SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;

注:如果有活动的session可以使用此选项,否则转换会遇到ORA-01093错误,也可以杀掉活动会话或等活动会话后进行转换

当出现session active的时候表示还有活动的session,则运行

SQL> Alter database commit to switchover tophysical standby with session shutdown;?

Step 3 关闭并重启主库(原主库执行)

SQL> SHUTDOWN IMMEDIATE;

SQL> STARTUP MOUNT;?

Step 4 验证备库是否能执行角色转换到主库(原备库执行)

SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

SWITCHOVER_STATUS

--------------------

TO PRIMARY?

Step 5 开始把物理备库转换成物理主库(原备库执行)

SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;

--如果报ORA-16139: mediarecovery required,可能是由于未应用日志引起,可先执行

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

Step 6 打开备库,然后关闭重启.(原备库执行)

SQL> ALTER DATABASE OPEN;

SQL> SHUTDOWN IMMEDIATE;

SQL> STARTUP;

Step 7 验证是否转换成功(原备库执行)

SQL> ALTER SYSTEM SWITCH LOGFILE;

Setp 8 应用归档日志(原主库上执行)

SQL> ALTERDATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

此步若提示报错:

ORA-01153: an incompati

首页 上一页 3 4 5 6 7 下一页 尾页 6/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇oracle之单行函数 下一篇Oracle本地数据库连接

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·TCP/UDP协议_百度百科 (2025-12-26 12:20:11)
·什么是TCP和UDP协议 (2025-12-26 12:20:09)
·TCP和UDP详解 (非常 (2025-12-26 12:20:06)
·Python 教程 - W3Sch (2025-12-26 12:00:51)
·Python基础教程,Pyt (2025-12-26 12:00:48)