SQL*Plus:> Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition> With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> SET PAGES 100 LINES 120
SQL> SET SQLP 'PRI_SQL> '
PRI_SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
SESSIONS ACTIVE
PRI_SQL> SELECT COUNT(*) FROM V$SESSION WHERE USERNAME IS NOT NULL;
COUNT(*)
----------
1
虽然当前数据库的状态是SESSIONS ACTIVE而不是TO STANDBY,但是查询V$SESSION会话,确认除了当前会话外,其他都是系统会话,那么就可以在主库进行SWITCHOVER切换了:
PRI_SQL>>
Database> PRI_SQL> SHUTDOWN IMMEDIATE
ORA-01507: database not mounted
ORACLE instance shut down.
PRI_SQL> STARTUP MOUNT
ORACLE instance started.
Total System Global Area 267825152 bytes
SQL*Plus:> Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition> With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> SET PAGES 100 LINES 120
SQL> SET SQLP 'STB_SQL> '
STB_SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
下面就可以将STANDBY数据库切换到PRIMARY数据库: