Home Database Mysql Tutorial Oracle 10g r2上switch over主备库的过程演示

Oracle 10g r2上switch over主备库的过程演示

Jun 07, 2016 pm 05:34 PM

Oracle 10g r2上switch over主备库的过程演示

当前状态是dg1为主库,备库为dg2
先检查主备库状态:
dg1

SQL> select name,database_role,OPEN_MODE,SWITCHOVER_STATUS from v$database;
DATABASE_ROLE    OPEN_MODE  SWITCHOVER_STATUS
---------------- ---------- --------------------
PRIMARY          READ WRITE SESSIONS ACTIVE

dg2

SQL> select database_role,OPEN_MODE,SWITCHOVER_STATUS from v$database;
DATABASE_ROLE    OPEN_MODE  SWITCHOVER_STATUS
---------------- ---------- --------------------
PHYSICAL STANDBY MOUNTED    NOT ALLOWED

现在dg1(当前主库)上操作以下步骤:

SQL>  alter database commit to switchover to physical standby with session shutdown;
Database altered.
SQL> shutdown immediate;
ORA-01507: database not mounted
Oracle instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area  390070272 bytes
Fixed Size                  2021024 bytes
Variable Size            150997344 bytes
Database Buffers          234881024 bytes
Redo Buffers                2170880 bytes
Database mounted.
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO PRIMARY

现在dg2(当前备库)上操作以下步骤:

SQL> select name,database_role,OPEN_MODE,SWITCHOVER_STATUS from v$database;
NAME      DATABASE_ROLE    OPEN_MODE  SWITCHOVER_STATUS
--------- ---------------- ---------- --------------------
ORCLDB    PHYSICAL STANDBY MOUNTED    TO PRIMARY
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
SQL>  alter database commit to switchover to primary;
Database altered.
SQL> alter database open;
Database altered.
SQL> select name,database_role,OPEN_MODE,SWITCHOVER_STATUS from v$database;
NAME      DATABASE_ROLE    OPEN_MODE  SWITCHOVER_STATUS
--------- ---------------- ---------- --------------------
ORCLDB    PRIMARY          READ WRITE SESSIONS ACTIVE


以上的操作已经完成了主备的切换,现在dg2为主库,dg1为备库,接下来我们在现在的主库dg2上做几次日志变化,看dg1能否同步过来。
dg1上看已经归档的日志:
SQL> select registrar,creator thread#,sequence#,first_change#,next_change# from v$archived_log;
REGISTR THREAD#  SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#
------- ------- ---------- ------------- ------------
FGRD    FGRD            29        586174      586196
dg2上经过几次日志切换,
SQL> select * from v$log;
GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS          FIRST_CHANGE# FIRST_TIM
---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------
1          1        36  52428800          1 NO  CURRENT                586469 05-JAN-14
2          1        34  52428800          1 YES INACTIVE                586464 05-JAN-14
3          1        35  52428800          1 YES INACTIVE                586467 05-JAN-14

可以看出现在日志已经到了36,,那么我们在dg1上应用日志,应该会应用到日志35;
以下操作验证:

SQL> alter database recover managed standby database disconnect from session;
Database altered.
SQL> select registrar,creator thread#,sequence#,first_change#,next_change# from v$archived_log;
REGISTR THREAD#  SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#
------- ------- ---------- ------------- ------------
RFS    ARCH            34        586464      586467
RFS    ARCH            35        586467      586469

以上的主备切换过程就已经顺利进行完成。

推荐阅读:

RedHat Linux 5 & CentOS 5下Oracle 10g安装详解

CentOS 6.3(x32)下安装Oracle 10g R2

Linux-6-64下安装Oracle 12C笔记

linux

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Reduce the use of MySQL memory in Docker Reduce the use of MySQL memory in Docker Mar 04, 2025 pm 03:52 PM

Reduce the use of MySQL memory in Docker

How do you alter a table in MySQL using the ALTER TABLE statement? How do you alter a table in MySQL using the ALTER TABLE statement? Mar 19, 2025 pm 03:51 PM

How do you alter a table in MySQL using the ALTER TABLE statement?

How to solve the problem of mysql cannot open shared library How to solve the problem of mysql cannot open shared library Mar 04, 2025 pm 04:01 PM

How to solve the problem of mysql cannot open shared library

What is SQLite? Comprehensive overview What is SQLite? Comprehensive overview Mar 04, 2025 pm 03:55 PM

What is SQLite? Comprehensive overview

Run MySQl in Linux (with/without podman container with phpmyadmin) Run MySQl in Linux (with/without podman container with phpmyadmin) Mar 04, 2025 pm 03:54 PM

Run MySQl in Linux (with/without podman container with phpmyadmin)

Running multiple MySQL versions on MacOS: A step-by-step guide Running multiple MySQL versions on MacOS: A step-by-step guide Mar 04, 2025 pm 03:49 PM

Running multiple MySQL versions on MacOS: A step-by-step guide

How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)? How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)? Mar 18, 2025 pm 12:00 PM

How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)?

What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? Mar 21, 2025 pm 06:28 PM

What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)?

See all articles