oracle数据库使用dgbroker搭建DG以及一些常见的小问题

oracle DG:

英文全称dataguard

提供备份和灾难恢复


dg----必须要有两台数据库,一台主一台备,主备可以来回切换


dg功能

1.备份(硬件可以低于主库,软件可以不一致)

2.提供容灾(硬件必须不低于主库,软件路径版本必须一致)

3.读写分离(主库读写对外服务。备库只读)逻辑备库可以读,11g物理备库也可以读

4.可以做测试(快照备库可以读写,测试完了在将其转为物理备库,这时所做的测试操作全部丢失)

 

dg又分物理备库和逻辑备库(具体可以网上查询,不做详细介绍)

 

dg介绍

1.日志传输服务:定义主库日志通过什么方式,如何传递给备库

主库日志传递给备库时,使用什么进程去传递,通过lgwr进程传还是arc进程传,主库日志是否和备一致,主库日志和备是否可以有时间差

log_archive_config='dg_config(db_unique_name主send/nosend|receive/noreceive,db_unique_name备send/nosend|receive/noreceive)';

默认主库和备库send+receive即接受有传送

10g一个主库最多9个备库

11g一个主库最多30个备库

log_archive_dest_1='location='/'db_unique_name=pri'

log_archive_dest_2='service=service_name(默认闪回路径)  <lgwr sync|arc async|delay 7200s延迟7200s传送|compress压缩归档文件传送>db_unique_name=std'

log_archive_dest_state_1=enable/disable

 

2.角色转换服务

switchover;自动转换,主库变备库,备库变主库,主库和备库都是正常的。(假如主库要升级,执行switchover将备库变成主库

关闭原来的主库,升级硬件,将原来的主库启动成备库,在执行switchover。)

failover :故障转换,主库不可用并且短时间无法恢复,这时需要failover切换,直接将备库做主库,原来的主库不在是dg中的成员,

必须重新搭建dg,如果使用的是dgbroker,这时原来的主库要成为备库必须重新实例化。

 

3.数据保护

a---最大保护模式:可以保证数据0丢失

开启最大保护模式时,当用户在主库进行操做,改操作记录到主库redo中,这时redo必须传递到备库,并且保证至少要有一个备库日志可用

该事务在主库才能完成。如果备库不可用,这时主库就会当机

v$database--protection_mode

b---最大可用性模式

处于最大可用性模式时,主库什么时候转日志,备库就什么时间接收

c---最大性能模式

保证数据库的性能,也保证数据0丢失,如果备库不可使用,主库转为最大可用模式,备库可用,恢复到最大性能模式

 

dg搭建的方式

1.操作系统命令方式(不做介绍)

2.rman的方式

duplicate克隆技术

3.oem(不做介绍)

 

搭建dg的前的准备

SID统一为up

主库:db_unique_name=pri   192.168.3.98

从库:db_unique_name=std   192.168.3.99

测试软件  vmware 10   

测试环境 centos6.5

建议关闭selinux和iptables

环境变量:最好一致,写到bash_profile或者手动 source都可以

cat db

export ORACLE_BASE=/u01/oracle

export ORACLE_HOME=/u01/11g

export ORACLE_SID=up

export PATH=$ORACLE_HOME/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/oracle/bin

 

cat asm

export ORACLE_BASE=/u01/oracle

export ORACLE_HOME=/u01/grid

export ORACLE_SID=+ASM

export PATH=$ORACLE_HOME/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/oracle/bin

 

主库操作:(主库首先需要搭建好oracle库,不会的可以去看我的上一篇博客http://blog.csdn.net/freedompuge/article/details/45028961

1.主库必须归档

启动到mount状态

 alter databse archivelog开启归档

SQL> archive log list;    ===》显示enabled表示开启
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     8
Next log sequence to archive   10
Current log sequence           10

 

2.强制日志记录

select force_logging from v$database;

alter database force logging;开启强制记录

 

3.网络配置

vim listener.ora

# listener.ora Network Configuration File:/u01/11g/network/admin/listener.ora

# Generated by Oracle configuration tools.

 

SID_LIST_LISTENER =

 (SID_LIST =

   (SID_DESC =

     (GLOBAL_DBNAME = up)

     (ORACLE_HOME = /u01/11g)

     (SID_NAME = up)

    )

 

   (SID_DESC =

     (GLOBAL_DBNAME = pri)

     (ORACLE_HOME = /u01/11g)

     (SID_NAME = up)

    )

 

   (SID_DESC =

     (GLOBAL_DBNAME = pri_DGMGRL)  ---或者写pri_DGBROKER

     (ORACLE_HOME = /u01/11g)

     (SID_NAME = up)

    )

    )

LISTENER =

 (DESCRIPTION =

   (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.98)(PORT = 1521))

  )

 

ADR_BASE_LISTENER = /u01/oracle

 

vim tnsname.ora-----tnsping ------如果不同可能是防火墙

# tnsnames.ora Network Configuration File:/u01/11g/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.

 

PRI =

 (DESCRIPTION =

   (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.98)(PORT = 1521))

   (CONNECT_DATA =

     (SERVER = DEDICATED)

     (SERVICE_NAME = pri)

    )

  )

 

STD =

 (DESCRIPTION =

     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.99)(P

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值