oracle 11g dataguard维护注意事项

1.检查primary和standby节点归档日志是否一至

(1).primary节点的归档日志

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            /u01/oradata/tong/archive

Oldest online log sequence     111

Next log sequence to archive   113

Current log sequence           113   --primary和standby节点这个数字一至就可以了

SQL>

(2).standby节点的归档日志

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            /u01/oradata/tong/archive

Oldest online log sequence     112

Next log sequence to archive   0

Current log sequence           113

SQL>

2.检查primary和stendby两个节点是否归档和开启闪回

SQL> select log_mode ,force_logging,flashback_on from v$database;

LOG_MODE     FOR FLASHBACK_ON

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

ARCHIVELOG    YES  NO

SQL>

3.查看primary和stendby节点监听是否启动或正常状态

[[email protected] ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 11-NOV-2016 14:39:14

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.55)(PORT=1521)))

STATUS of the LISTENER

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

Alias                     LISTENER

Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production

Start Date                11-NOV-2016 14:39:04

Uptime                    0 days 0 hr. 0 min. 10 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /u01/product/11.2.0.1/db_1/network/admin/listener.ora

Listener Log File         /u01/diag/tnslsnr/dg1/listener/alert/log.xml

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.3.55)(PORT=1521)))

Services Summary...

Service "tong" has 1 instance(s).

Instance "tong", status UNKNOWN, has 1 handler(s) for this service...

The command completed successfully

[[email protected] ~]$

4.检查primary和stendby节点归档目录是否一至(log_archive_dest_1)

SQL> show parameter log_archive_dest_1

NAME                         TYPE        VALUE

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

log_archive_dest_1               string      LOCATION=/u01/oradata/tong/archive                                      valid_for(all_logfiles,all_roles)

db_unique_name=tong

log_archive_dest_10              string

log_archive_dest_11              string

5.检查磁盘使用空间(有时由于磁盘空间不够,闪回恢复区不能写入文件)

[[email protected] ~]$ df -TH

Filesystem    Type     Size   Used  Avail Use% Mounted on

/dev/sda3     ext3     17G    11G   4.4G  72% /

/dev/sda1     ext3     510M    28M   456M   6% /boot

tmpfs        tmpfs    1.1G   520M   523M  50% /dev/shm

[[email protected] ~]$

6.正确打开dataguard数据库(先启动primary节点数据库,后在standby节点开启日志传送模式)

(1).在primary节点打开数据库

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

Total System Global Area  830930944 bytes

Fixed Size                  2217912 bytes

Variable Size             532678728 bytes

Database Buffers          293601280 bytes

Redo Buffers                2433024 bytes

Database mounted.

SQL> alter database archivelog;

Database altered.

SQL> alter database open;

Database altered.

SQL> select * from dual;

D

-

X

SQL>

(2).在standby节点

SQL> startup mount;

ORACLE instance started.

Total System Global Area  830930944 bytes

Fixed Size                  2217912 bytes

Variable Size             490735688 bytes

Database Buffers          335544320 bytes

Redo Buffers                2433024 bytes

Database mounted.

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

Database altered.

SQL>

7.正确关闭数据库(先在syandby断开复制,然后在primary关闭数据库)

(1).standby节点

SQL> alter database recover managed standby database cancel;

Database altered.

SQL> shutdown immediate

ORA-01109: database not open

Database dismounted.

ORACLE instance shut down.

SQL>

(2).primary节点

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL>

8.在syandby节点修改数据库为read only模式

(1).primary节点的数据库是open状态

(2).standby节点的数据库是日志传送状态

SQL> recover managed standby database cancel;    --结束日志传送状态

Media recovery complete.

SQL> alter database open read only;     --将数据库的状态修改为read only

Database altered.

SQL> select * from t;

A

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

1

2

3

4

6

7

8

7 rows selected.

SQL>

9.将standby节点的数据库由read only修改为日志传送状态

SQL> select status from v$instance;

STATUS

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

OPEN

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

Total System Global Area  830930944 bytes

Fixed Size                  2217912 bytes

Variable Size             490735688 bytes

Database Buffers          335544320 bytes

Redo Buffers                2433024 bytes

Database mounted.

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

Database altered.

SQL> select status from v$instance;

STATUS

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

MOUNTED

SQL>

10.查看日志传送的信息

(1).primary节点当前的日志信息

SQL> select sequence#,status from v$log;

SEQUENCE# STATUS

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

127   ACTIVE

128   CURRENT

126   ACTIVE

SQL>

(2).standby节点正在传送的日志信息

SQL> SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS FROM V$MANAGED_STANDBY;

PROCESS   STATUS          THREAD#  SEQUENCE#     BLOCK#     BLOCKS

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

ARCH      CLOSING         1        127         1       6

ARCH      CLOSING         1        125         1       271

ARCH      CONNECTED       0         0           0       0

ARCH      CLOSING         1        126         1       43

RFS       IDLE           0         0          0       0

RFS       IDLE           0         0          0       0

RFS       IDLE           1        128         182      1

RFS       IDLE           0         0          0       0

MRP0      WAIT_FOR_LOG     1         128         0        0

9 rows selected.

SQL>

11.检查standby节点的备库是否与主库同步

(1).primary节点查看已经归档的日志

SQL> SELECT ARCHIVED_THREAD#, ARCHIVED_SEQ#, APPLIED_THREAD#, APPLIED_SEQ# FROM V$ARCHIVE_DEST_STATUS;

ARCHIVED_THREAD# ARCHIVED_SEQ# APPLIED_THREAD# APPLIED_SEQ#

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

1        127          0          0

1        127          1          124

1        127          0          0

1        127          0          0

1        127          0          0

1        127          0          0

1        127          0          0

1        127          0          0

1        127          0          0

1        127          0          0

1        127          0          0  --表示在127以前的日志全部归档

11 rows selected.

SQL>

(2).standby节点的归档日志信息

SQL> SELECT ARCHIVED_THREAD#, ARCHIVED_SEQ#, APPLIED_THREAD#, APPLIED_SEQ# FROM V$ARCHIVE_DEST_STATUS;

ARCHIVED_THREAD# ARCHIVED_SEQ# APPLIED_THREAD# APPLIED_SEQ#

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

1        127        0           0

0         0         0           0

0         0         0           0

0         0         0           0

0         0         0           0

0         0         0           0

0         0         0           0

0         0         0           0

0         0         0           0

0         0         0           0

1         127       1          127

11 rows selected.

SQL>

12.在standby节点查看dataguard的状态

SQL> select message from v$dataguard_status;

13.primary和standby正常切换状态

(1).在primary节点查看是否可以切换

SQL> select switchover_status from v$database;

SWITCHOVER_STATUS

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

TO STANDBY

SWITCHOVER_STATUS:TO STANDBY表示可以正常切换.如果SWITCHOVER_STATUS的值为SESSIONS ACTIVE,表示当前有会话处于ACTIVE状态

如果SWITCHOVER_STATUS的值为TO STANDBY 则:
SQL> alter database commit to switchover to physical standby;
如果SWITCHOVER_STATUS的值为SESSIONS ACTIVE 则:
SQL> alter database commit to switchover to physical standby with session shutdown;
成功运行这个命令后,主库被修改为备库

SQL> alter database commit to switchover to physical standby;

Database altered.

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             532678728 bytes

Database Buffers          293601280 bytes

Redo Buffers                2433024 bytes

Database mounted.

SQL> select switchover_status from v$database;

SWITCHOVER_STATUS

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

TO PRIMARY

SQL>

(2).standby节点

时间: 2024-10-11 07:15:22

oracle 11g dataguard维护注意事项的相关文章

ORACLE 11G DataGuard的一些高级管理案例研究

搭建完了ORACLE 11G dataguard后,也做了角色切换的实验,有switchover已经failover,感觉受益颇多,而后继续研究了下dataguard的一些高级管理功能,所谓冰山一角,ORACLE果然博大精深,总结记录如下:1,ORACLE 11G dataguard的高级管理1.1.READ ONLY/WRITE模式打开物理STANDBY一般standby都是可以设置为mount状态的,于物理standby 可以有效分担primary 数据库压力,提升资源利用,实际上说的就是这

Linux Oracle 11g dataguard物理standby 配置过程

这两天研究了下oracle 11g dataguard 物理standby 功能,总体来说这个功能满足公司需求,好了,不多说了,以下是详细的配置过程. 数据库的安装可以参考之前写的六步搞定Linux Oracle 11gR2 配置安装 注意:分别在主库和备库都安装上oracle软件,不装数据库. 主库: IP:192.168.77.5 主机名:nod1 ORACLE_SID=test ORACLE_BASE=/oracle/app/oracle ORACLE_HOME=/oracle/app/o

Oracle 11g dataguard三种模式以及实时查询(Real-time query)功能设置

之前我们讨论过<Linux Oracle 11g dataguard物理standby 配置过程>, 但是在实际过程中会遇到不同的问题,首先我们讨论下ORACLE DATAGUARD的三种模式, 保护最大化:这种模式的配置可以保证主库和备库的同步,任何情况下主库的损毁都不会导致已提交数据的丢失.如果主库和备库之间的网络出现问题,或者备库本身出现问题,都会导致主库停止数据处理. 可用最大化:这种模式和上面一种类似,也是会保证主库和备库的同步,区别在于,当网络或备库不可用时,主库仍然可以继续处理.

Oracle 11G DataGuard生产环境重新启动详细过程

场景,重启数据库,不重启linux系统,所以不用考虑监听程序,#linux输入lsnrctl start1 数据库关闭1.1 关闭主库SHUTDOWN IMMEDIATE; SQL> SHUTDOWN IMMEDIATE;                                                                                                                                          

Oracle Study之案例--Oracle 11g DataGuard Snapshot Standby

Oracle Study之案例--Oracle 11g  DataGuard Snapshot Standby Oracle 11g的Data Guard不仅仅带给我们的是Active Data Guard实时查询特性,同时还带来了另外一个新特性,这便是Snapshot Standby数据库功能,此项功能可将备库置身于"可读写状态"用于不方便在生产环境主库中测试的内容,比如模拟上线测试等任务.当备库读写状态下任务完成后,可以非常轻松的完成Snapshot Standby数据库角色切换回

Oracle 11G DataGuard ORA-16086问题修复详细过程

1,问题描述,standby从库没有应用redo日志Tue Jul 22 09:05:07 2014RFS[8852]: Assigned to RFS process 12956RFS[8852]: Identified database type as 'physical standby': Client is ARCH pid 16028Tue Jul 22 09:05:09 2014RFS[8853]: Assigned to RFS process 12958RFS[8853]: Id

Oracle 11g Dataguard 暂停物理备库的日志传输

Oracle 11g Dataguard 暂停物理备库的日志传输分类: Oracle2017-07-18 10:03:17这两天生产端的日志产生过多导致灾备端的归档日志目录满的现象,在清除灾备端的日志后发现log_archive_dest_2处于error状态,需要将其enable.在实际生产系统中,通常有这样的场景,例如在系统维护日,对主库进行大量的业务更新,会有大量的DML操作:为了避免主库中的业务更新对备库造成影响,可以暂停主库对备库的日志传输,这样的话,如果主库的更新出现问题,备库还保留

【转】Oracle 11g Dataguard 参数详解

转自:https://www.jb51.net/article/52269.htm 这篇文章主要介绍了Oracle 11g Dataguard参数详解,包含了独立参数.主库参数.备库参数的详细说明,需要的朋友可以参考下. 注:本文译自<Oracle Data Guard 11g Handbook> Page 78 – Page 88 就Data Guard(后面都写成DG)来说,我们只关注如下三种参数: 1.独立于数据库角色的参数2.数据库角色为primary时的参数3.数据库角色为stand

Oracle 11g DataGuard搭建(一) - 单节点到单节点

(一)DataGuard概要 DataGuard中文称为”数据卫士“,提供了数据库高可用性.数据保护和灾难恢复的功能.DataGuard通过建立primary数据库和standby数据库来确立参照关系,DataGuard将主库(primary)的redo日志传递给备库(standby),然后在备库中应用redo进行同步. 备库又分为2种类型:物理备库和逻辑备库 物理standby是通过块拷贝方式同步,通过接受并应用primary数据库的redo log,以介质恢复的方式同步.在物理备库中,数据是