oracle alter database switch,ORACLE 11g dataguard系列,手工切换测试

在我的博客的基础上,进行手工切换测试

当前环境介绍

48784375c38cbf8c9caf99b7b5a4cc1f.png

primary数据库 10.1.1.21

standby数据库 10.1.1.23

当前dataguard主要配置如下

69268177bb154de4fd31cecb2cac93d2.png

切换测试开始

一、在primary数据库执行

1、查看当前数据库角色状态

SQL> select switchover_status,database_role from v$database;

4901c718bd06bebe05d903383eb1e4df.png

当前的standby数据库状态

098c08ff850645370996de99149ed147.png

2、在主数据库执行切换命令

alter database commit to switchover to physical standby;

f03c4fa02a27496a94f8062665ba595c.png

3、在主数据库执行以下命令

SQL> shutdown immediate

ORA-01507: database not mounted

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

Total System Global Area 830930944 bytes

Fixed Size                 2217912 bytes

Variable Size                 574621768 bytes

Database Buffers         247463936 bytes

Redo Buffers                 6627328 bytes

Database mounted.

SQL> alter database open read only;

Database altered.

SQL> alter database recover managed standby database disconnect from session;

Database altered.

4、查询切换后的角色,已经成为standby数据库了。

bde38bda4ddfabf011e863b92a4f22aa.png

二、在standby数据库执行

1、查询switchover状态,目前已是to primary状态,满足切换条件了

select switchover_status,database_role from v$database;

198fafeb5e01901d75614f6f06f64d09.png

2、执行切换为primary数据库

SQL> alter database commit to switchover to primary;

Database altered.

3、查询当前角色

ed9a48f04b1770829be547770d3ac6ea.png

4、重启数据库实例,由于之前原standby数据库是read only打开的重启一下数据库实例

SQL> shutdown immediate

ORA-01109: database not open

Database dismounted.

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

Total System Global Area 830930944 bytes

Fixed Size                 2217912 bytes

Variable Size                 490735688 bytes

Database Buffers         331350016 bytes

Redo Buffers                 6627328 bytes

Database mounted.

Database opened.

三、切换后测试

修改一张表内容,测试切换后是否正常

在新的primary实例上创建执行以下操作测试

查询当前dba_users表中用户

SQL> select username from dba_users;

USERNAME

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

SYS

SYSTEM

DBSNMP

SYSMAN

TESTTEST

QWE

DBATEST

HR

TTE

OUTLN

FLOWS_FILES

USERNAME

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

MDSYS

ORDSYS

EXFSYS

WMSYS

APPQOSSYS

APEX_030200

OWBSYS_AUDIT

ORDDATA

CTXSYS

ANONYMOUS

XDB

USERNAME

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

ORDPLUGINS

OWBSYS

SI_INFORMTN_SCHEMA

OLAPSYS

SCOTT

ORACLE_OCM

XS$NULL

BI

PM

MDDATA

IX

USERNAME

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

SH

DIP

OE

APEX_PUBLIC_USER

SPATIAL_CSW_ADMIN_USR

SPATIAL_WFS_ADMIN_USR

39 rows selected.

创建一个新用户

SQL> create user liuzhen identified by lz;

User created.

查询当前用户40个

SQL> select username from dba_users;

USERNAME

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

SYS

SYSTEM

DBSNMP

SYSMAN

TESTTEST

QWE

LIUZHEN

DBATEST

HR

TTE

OUTLN

USERNAME

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

FLOWS_FILES

MDSYS

ORDSYS

EXFSYS

WMSYS

APPQOSSYS

APEX_030200

OWBSYS_AUDIT

ORDDATA

CTXSYS

ANONYMOUS

USERNAME

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

XDB

ORDPLUGINS

OWBSYS

SI_INFORMTN_SCHEMA

OLAPSYS

SCOTT

ORACLE_OCM

XS$NULL

BI

PM

MDDATA

USERNAME

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

IX

SH

DIP

OE

APEX_PUBLIC_USER

SPATIAL_CSW_ADMIN_USR

SPATIAL_WFS_ADMIN_USR

40 rows selected.

切换日志组

SQL> alter system switch logfile;

System altered.

在新的standby上面查询dba_tables

SQL> select username from dba_users;

USERNAME

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

SYS

SYSTEM

DBSNMP

SYSMAN

TESTTEST

QWE

LIUZHEN

DBATEST

HR

TTE

OUTLN

USERNAME

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

FLOWS_FILES

MDSYS

ORDSYS

EXFSYS

WMSYS

APPQOSSYS

APEX_030200

OWBSYS_AUDIT

ORDDATA

CTXSYS

ANONYMOUS

USERNAME

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

XDB

ORDPLUGINS

OWBSYS

SI_INFORMTN_SCHEMA

OLAPSYS

SCOTT

ORACLE_OCM

XS$NULL

BI

PM

MDDATA

USERNAME

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

IX

SH

DIP

OE

APEX_PUBLIC_USER

SPATIAL_CSW_ADMIN_USR

SPATIAL_WFS_ADMIN_USR

40 rows selected.

查看新的standby数据库alert日志,以下表明,日志应用服务是正常的。

RFS[4]: Assigned to RFS process 6598

RFS[4]: Identified database type as 'physical standby': Client is ARCH pid 12180

Tue Sep 23 06:02:31 2014

Archived Log entry 116 added for thread 1 sequence 81 ID 0xca43b088 dest 1:

Tue Sep 23 06:02:31 2014

RFS[2]: Selected log 4 for thread 1 sequence 82 dbid -919775302 branch 840741181

Tue Sep 23 06:02:31 2014

Media Recovery Log /home/oracle/app/oracle/flash_recovery_area/SAP/archivelog/1_81_840741181.dbf

Media Recovery Waiting for thread 1 sequence 82 (in transit)

手动切换data guard完成。总结步骤如下

primary数据库执行以下几步

1、select

switchover_status,database_role from v$database;                   //显示 TO STANDBY 、PRIMARY

2、alter database

commit to switchover to physical standby;

如果有活动的session使用alter database commit to switchover to

physical standby with

session shutdown

3、重启实例,启动到read only

4、alter database

recover managed standby database disconnect from session;

5、select

database_role from v$database;                                            //显示PHYSICAL STANDBY

standby数据库执行以下几步

1、select

switchover_status,database_role from v$database;                  //显示TO

PRIMARY、 PHYSICAL STANDBY

2、alter database

commit to switchover to primary;

3、重启实例,到open状态

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值