最近集团在做灾备方案,用于Oracle的高可用性,在不影响主库性能的前提下,我们选择使用DG的"最大性能"模式。
 
DG是Oracle数据库自带的数据同步功能,其基本原理是将日志文件从主库传输到备库,然后在备库上应用这些日志文件,从而使备库与主库保持同步。
DataGuard提供了三种日志传输(Redo Transport)方式,分别是ARCH传输、LGWR同步传输和LGWR异步传输。在上述三种日志传输方式的基础上,提供了三种数据保护模式,即最大性能(Maximum Performance Mode)、最大保护(Maximum Protection Mode)和最大可用(Maximum Availability Mode),其中最大保护模式和最大可用模式要求日志传输必须用LGWR同步传输方式,最大性能模式下可用任何一种日志传输方式。
 
现将Dataguard配置过程给大家做以分享
1.主库开启归档模式
2.alter database force logging;
3.添加standby logfile
alter database add standby logfile '/data/oracle/oradata/orcl/standby01.log' size 50M;
alter database add standby logfile '/data/oracle/oradata/orcl/standby02.log' size 50M;
alter database add standby logfile '/data/oracle/oradata/orcl/standby03.log' size 50M;
 
4.配置log_archive_config
alter system set  log_archive_config='dg_config=(orcl,dgorcl)';
 
alter system set log_archive_dest_1='location=/data/arch valid_for=(all_logfiles,all_roles) db_unique_name=orcl';
alter system set log_archive_dest_2 ='service=dgorcl async valid_for=(online_logfile,primary_role) db_unique_name=dgorcl';
 
5.编辑主库tnsnames.ora文件,将standby实例加进去
DGORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = dgorcl)
    )
  )
 
6.编辑主库listener.ora文件,将standby静态注册进去
# listener.ora Network Configuration File: /data/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
 
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )
 
ADR_BASE_LISTENER = /data/oracle
 
SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
        (GLOBAL_DBNAME = dgorcl)
        (ORACLE_HOME = /data/oracle/product/11.2.0/db_1)
        (SID_NAME = dgorcl)
     )
   )
 
7.重启监听
lsnrctl stop
lsnrctl start
 
8.创建standby库密码文件
 cd $ORACLE_HOME/dbs
cp orapworcl orapwdgorcl
 
9.创建standby的初始化参数文件
 cd $ORACLE_HOME/dbs
echo DB_NAME=dgorcl>initdgorcl.ora
 
10.创建standby库相应的目录
mkdir $ORACLE_BASE/admin/dgorcl
mkdir $ORACLE_BASE/admin/dgorcl/adump
mkdir $ORACLE_BASE/admin/dgorcl/dpdump
mkdir $ORACLE_BASE/admin/dgorcl/pfile
 
11.创建standby数据文件存放位置
mkdir $ORACLE_BASE/oradata/dgorcl
 
12.使用standby pfile启动至nomount状态
 
12.使用rman以auxiliary方式连接standby数据库
export ORACLE_SID=orcl
rman target / auxiliary sys@dgorcl
 
13.rman 创建standby数据库
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate auxiliary channel stby type disk;
duplicate target database for standby from active database 
spfile
parameter_value_convert 'orcl','dgorcl'
set db_unique_name='dgorcl'
set db_file_name_convert='/orcl/','/dgorcl/'
set control_files='/data/oracle/oradata/dgorcl/dgorcl.ctl'
set log_archive_max_processes='5'
set fal_client='dgorcl'
set fal_server='orcl'
set standby_file_management='AUTO'
set log_archive_config='dg_config=(orcl,dgorcl)'
set log_archive_dest_2='service=orcl async valid_for=(online_logfile,primary_role) db_unique_name=orcl' ;
}
 
14.standby库日志恢复开启
alter database recover managed standby database disconnect from session;
 
到此已完成Phyical Dataguard的相关配置,并为之后调整DG到ADG,做logical dataguard,做报表查询分担主库压力和实现读写分离做准备。
 

Oracle Dataguard的原理与基本配置的更多相关文章

  1. oracle DataGuard 主从 踩过坑的

    一.主机描述 dbprimary: 192.168.1.57 主机名称db1    dbstandby: 192.168.1.58 主机名成db2    SID: orcl 二.配置tns,配置好的文 ...

  2. Oracle Dataguard之物理standby的基本配置

    尽管网上有很多Oracle Dataguard的配置教程,但不难发现,很多采用的是rman duplicate这种方法,尽管此种方法较为简便.但在某种程度上,却也误导了初学者,虽说也能配置成功,但只知 ...

  3. Oracle dataguard 正常切换和应急切换

    oracle dataguard提供异地容灾方案,能有效的防止单点故障和提供高可用技术,这里介绍dataguard正常主备切换和应急切换(应急切换模拟主库出现问题无法还原,备库脱离dataguard接 ...

  4. Oracle Dataguard之failover

    Oracle Dataguard中,角色转换包含两类:Switchover和Failover.上文<Oracle Dataguard之switchover>中,我们已经谈过了switcho ...

  5. Oracle Dataguard之switchover

    Oracle Dataguard的角色转换包含两类:Switchover和Failover.Switchover指主备之间角色转换,主库降为备库,备库升级为主库.而failover则是指主库出现问题时 ...

  6. Oracle Dataguard之Real-Time Apply

    Oracle Dataguard一共支持三种模式:最大可用模式(Maximum Availability),最大性能模式(Maximum Performance),最大保护模式(Maximum Pro ...

  7. Oracle DataGuard 物理Standby 搭建(上)

    物理standby database 环境搭建 Arch asysnc Oracle Dataguard host IP Oracle_sid DB_unique_name FAL_server FA ...

  8. Oracle DataGuard搭建(一)

    第一次搭建oracle dataguard.学oracle很长时间,却没有完整的搭过dg,说起来让人笑.总得有第一次,而且第一次总是很痛苦的. 数据库版本: Oracle Database 11g E ...

  9. Oracle DataGuard数据备份方案详解

    Oracle DataGuard是一种数据库级别的HA方案,最主要功能是冗灾.数据保护.故障恢复等. 在生产数据库的"事务一致性"时,使用生产库的物理全备份(或物理COPY)创建备 ...

随机推荐

  1. IO流(四)__流的操作规律总结

    流的操作规律: 1.明确源和目的 源:InputStream Reader 目的:OutputStream Writer 2.明确数据是否是纯文本数据 源:是纯文本:Reader 否:InputStr ...

  2. letter-spacing

    letter-spacing:3px的意思就是字母之间的间距是3px:

  3. textillate.js 文字动画

    textillate.js是一款强大的文字插件,若配合animate.css.fittext.lettering一起使用,这样做出来的文字特效很完美. 在线实例 实例演示 使用方法 <div i ...

  4. Google Web Designer – 创建引人入胜的 HTML5 网站

    Google Web Designer 可以帮助你创建引人入胜,互动的基于 HTML5 的设计和动画,可以在任何设备上运行.如果你喜欢自己动手,设计背后的所有的代码都是可以手工编辑的. 虽然可视化工具 ...

  5. ThinkPHP3.2 G函数代码及 使用方法

    ThinkPHP3.2 G函数代码及 使用方法 代码: // 内存是否可调用 define('MEMORY_LIMIT_ON',function_exists('memory_get_usage')) ...

  6. Eclipse Plug-in Hello world

    这一篇就简单说下一个hello world插件工程创建过程. 1.创建一个Plug-in Project     2.填写project name     3.第二个确认框勾上,然后直接下一步     ...

  7. .Net资源总结

    源码文档见官方群(以下为7.4更新内容) 逆天工具 CDN 资源库 国内 Bootstrap中文网开源项目免费 CDN 服务 360网站卫士常用前端公共库CDN服务 百度静态资源公共库 新浪云计算CD ...

  8. ASP.NET MVC Bootstrap极速开发框架

    前言 每次新开发项目都要从头开始设计?有木有一个通用的快速开发框架?并且得是ASP.NET MVC  And Bootstrap?数据库不要手工创建?框架对未来业务支持的扩展性好?这么简单的功能还需要 ...

  9. php示例代码之empty函数

    1 2 3 4 5 6 7 8 9 10 11 <?php     $testVar=0;   if(empty($testVar))   {     echo 'msg:true';   } ...

  10. git之一

    1.Git是什么Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.Git 是 ...