dg原理 oracle rac_oracle rac +rac dg - CSDN
精华内容
参与话题
  • ORACLE RAC+DG(单实例)

    万次阅读 2019-07-02 14:55:43
    ORACLE RAC+DG(单实例) 前提条件: 1.主库RAC已经成功安装,数据库也已经创建。 2.DG备库已经安装完相同版本的oracle软件,无需创建数据库。 1、RAC开启归档。 任意节点: alter system set log_archive_format='%t_%s...

    ORACLE RAC+DG(单实例)
    前提条件:
    1.主库RAC已经成功安装,数据库也已经创建。
    2.DG备库已经安装完相同版本的oracle软件,无需创建数据库。

    1、RAC开启归档。
    任意节点:

    alter system set log_archive_format='%t_%s_%r.arc' scope=spfile sid='*';
    alter system set log_archive_dest_1='LOCATION=+DATA/arch' scope=spfile sid='*';
    srvctl stop database -d racdb -o immediate
    startup mount
    alter database archivelog;
    alter database open;
    srvctl start database -d racdb
    

    查看每个节点的归档

    alter system switch logfile;
    archive log list;
    

    每个节点的归档序号是不一样的。

    2、启用force logging功能

    select force_logging from v$database;
    alter database force logging;
    

    3、查询主库日志文件

    select thread#,group#,members,bytes/1024/1024 from v$log;
    alter database add standby logfile thread 1 group 11 size 50m;
    alter database add standby logfile thread 1 group 12 size 50m;
    alter database add standby logfile thread 1 group 13 size 50m;
    alter database add standby logfile thread 2 group 14 size 50m;
    alter database add standby logfile thread 2 group 15 size 50m;
    alter database add standby logfile thread 2 group 16 size 50m;
    

    3、配置主库的初始化参数

    alter system set db_unique_name='racdb' scope=spfile;
    alter system set log_archive_config='DG_CONFIG=(racdb,racdg)' scope=both sid='*';
    alter system set log_archive_dest_1='LOCATION=+data/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=racdb' scope=both sid='*';
    alter system set log_archive_dest_2='SERVICE=racdg LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=racdg' scope=both sid='*';
    alter system set log_archive_format='%t_%s_%r.arc' scope=spfile sid='*';
    alter system set log_archive_max_processes=8 scope=both sid='*';
    alter system set db_file_name_convert='/oradata/racdg/','+DATA/racdb/datafile' scope=spfile sid='*';
    alter system set log_file_name_convert='/oradata/racdg/','+DATA/racdb/onlinelog' scope=spfile sid='*';
    alter system set standby_file_management=AUTO scope=both sid='*';
    alter system set fal_server='rac_dg' scope=both sid='*';
    

    4、查询是否生效:

    set linesize 500 pages 0
    col value for a90
    col name for a50
    select name, value from v$parameter where name in ('db_name','db_unique_name','log_archive_config', 'log_archive_dest_1','log_archive_dest_2','log_archive_dest_state_1','log_archive_dest_state_2','remote_login_passwordfile','log_archive_format','log_archive_max_processes','fal_server','db_file_name_convert', 'log_file_name_convert', 'standby_file_management')
    

    5、配置本地服务名(两个节点保持一致)

    cd $ORACLE_HOME/network/admin
    vim tnsnames.ora
    
    RACDB =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = racdb)
        )
      )
    
    RACDB1 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.200.203)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = racdb)
        )
      )
    
    RACDB2 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.200.204)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = racdb)
        )
      )
    
    
    RACDG =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.200.206)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = racdg)
        )
      )
    

    6、复制密码到DG节点
    使用oracle用户

    cd $ORACLE_HOME/dbs
    scp orapwracdb1 192.168.100.206:/$ORACLE_HOME/dbs/orapwracdg
    

    7、创建初始化文件。
    登录dg节点,使用oracle用户

    cd $ORACLE_HOME/dbs
    vim initracdg.ora
    如下:
    *.audit_file_dest='/u01/app/oracle/admin/racdg/adump'
    *.audit_trail='db'
    *.compatible='11.2.0.4.0'
    *.control_files='/oradata/racdg/control01.ctl'
    *.db_block_size=8192
    *.db_create_file_dest='/oradata/racdg'
    *.db_domain=''
    *.db_name='racdb'
    *.db_unique_name='racdg'
    *.diagnostic_dest='/u01/app/oracle'
    *.dispatchers='(PROTOCOL=TCP) (SERVICE=racdgXDB)'
    *.fal_client='racdg'
    *.fal_server='racdb'
    *.log_archive_config='DG_CONFIG=(racdb,racdg)'
    *.log_archive_dest_1='LOCATION=/oradata/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=racdg'
    #*.log_archive_dest_2='SERVICE=racdb LGWR ASYNC VALID_FOR=(ALL_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=racdb OPTIONAL PROPEN=15 MAX_FAILU
    RE=10 NET_TIMEOUT=30'
    *.log_archive_dest_2='SERVICE=racdb LGWR ASYNC VALID_FOR=(ALL_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=racdb'
    *.log_archive_dest_state_2='enable'
    *.log_file_name_convert='+DATA/racdb/onlinelog','/oradata/racdg'
    *.db_file_name_convert='+DATA/racdb/datafile','/oradata/racdg'
    *.log_archive_format='%t_%s_%r.dbf'
    *.log_archive_max_processes=8
    *.open_cursors=300
    *.pga_aggregate_target=536870912
    *.processes=150
    *.remote_login_passwordfile='exclusive'
    *.standby_file_management='AUTO'
    *.sga_target=2147483648
    *.undo_tablespace='UNDOTBS1'
    

    8、主库做备份。

    rman targer /
    

    执行:

    backup database format '/oradata/backup/racdb_%T_%s';
    cd /oradata/backup/
    scp racdb* 192.168.200.206:/oradata/backup/
    

    9、创建目录

    mkdir -p /u01/app/oracle/admin/racdg/adump
    mkdir -p /oradata/racdg/
    mkdir -p /oradata/arch/
    

    10、创建LISTENER

    LISTENER =
       (DESCRIPTION_LIST =
         (DESCRIPTION =
           (ADDRESS = (PROTOCOL = TCP)(HOST = racdg)(PORT = 1521)))
              (DESCRIPTION =
           (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
         )
        )
       ADR_BASE_LISTENER = /u01/app/oracle 
    

    11、启动mount

    startup mount;
    rman恢复数据库
    rman target /
    catalog start with '/oradata/backup';
    run {
    allocate channel ch00 type disk;
    allocate channel ch01 type disk;
    allocate channel ch02 type disk;
    allocate channel ch03 type disk;
    set newname for datafile 1 to '/oradata/racdg/system.dbf';
    set newname for datafile 2 to '/oradata/racdg/sysaux.dbf';
    set newname for datafile 3 to '/oradata/racdg/undotbs1.dbf';
    set newname for datafile 4 to '/oradata/racdg/users.dbf';
    set newname for datafile 5 to '/oradata/racdg/undotbs2.dbf';
    set newname for datafile 6 to '/oradata/racdg/test.dbf';
    set newname for datafile 7 to '/oradata/racdg/test01.dbf';
    restore database;
    switch datafile all;
    release channel ch00;
    release channel ch01;
    release channel ch02;
    release channel ch03;
     }
    

    12、standby开启实时同步

    alter database recover managed standby database using current logfile disconnect from session;
    停止同步:
    alter database recover managed standby database cancel;
    

    13、 主库查询进程状态(注意LNS进程)

    select process, client_process, sequence#,thread#,status from v$managed_standby;
    ![如下图](https://img-blog.csdnimg.cn/20190702144431875.jpg)
    

    14、备库查询进程状态(注意RFS进程和MRP0进程)

    select process, client_process, sequence#,thread#,status from v$managed_standby;
    ![如下图](https://img-blog.csdnimg.cn/20190702144626345.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjIzOTE4Nw==,size_16,color_FFFFFF,t_70)
    

    15、查询日志

    select sequence#, first_time, next_time, applied from v$archived_log order by sequence#;
    

    16、主库手动切换日志

    alter system switch logfile;
    

    17、查询日志

    select sequence#, first_time, next_time, applied from v$archived_log order by sequence#;
    

    18、打开datagaurd模式

     alter database recover managed standby database cancel;
     alter database open read only;
     alter database recover managed standby database using current logfile disconnect from session;
    

    19、查看数据库模式

        主库:
        SQL>  select open_mode,database_role,switchover_status from v$database;
        
        OPEN_MODE	     DATABASE_ROLE    SWITCHOVER_STATUS
        -------------------- ---------------- --------------------
        READ WRITE	     PRIMARY	      SESSIONS ACTIVE
        备库:
        SQL> select open_mode,database_role,switchover_status from v$database;
        
        OPEN_MODE	     DATABASE_ROLE    SWITCHOVER_STATUS
        -------------------- ---------------- --------------------
        READ ONLY WITH APPLY PHYSICAL STANDBY NOT ALLOWED
    
    展开全文
  • HA/DG/RAC 三者的区别

    千次阅读 2010-08-14 16:04:00
    高可用性解决方案分为4种 (DG AR RAC HA): 一种是oracle提供的被用方法,Standby (=9i DataGuard) 一种是AR (高级复制Advanced Replication,在以前版本叫快照snapshot) 一种是oracle 并行...

    高可用性解决方案分为4种 (DG AR RAC HA):
    一种是oracle提供的被用方法,Standby (=9i DataGuard)
    一种是AR (高级复制Advanced Replication,在以前版本叫快照snapshot)
    一种是oracle 并行服务器8i的OPS (9i RAC,Real Application Cluster)
    一种是第三方HA解决方案(如Rose HA,故障切换时间是几分钟,也叫双机)

     

    各自应用的侧重点:
    HA 侧重于业务的自动接管,自动接管需要几分钟时间,且长期有一组Instance闲置,浪费资源,不能容灾。
    DG 侧重于容灾,独立存储,但两者数据不能做到实时同步。
    RAC侧重于负载均衡,但共享存储不能容灾。

     

    详细说明:
    HA 双机热备由两台计算机和一个共享存储设备构成,通过第三方软件(HA Rose等)实现切换,不需要做数据同步.

    DG Data Guard 是oracle的远程复制技术,由两个多两个以上的独立的数据库构成,他们各自有各自的存储,Oracle负责他们之间的切换和数据同步,它需要在异地有一套独立的系统,两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,包括软件的版本,目录存储结构,以及数据的同步(其实也不是实时同的),这两套系统之间只要网络是通的就可以了,是一种异地容灾的解决方案。

    RAC 本地的高可用集群,RAC是多节点,每个节点一个INSTANCE,是保证应用的,只要有一个节点是正常运行的,就能连接到数据库,每个节点用来分担不同或相同的应用,以解决运算效率低下、单节点故障这样的问题,它是几台硬件相同或不相同的服务器,加一个SAN(共享的存储区域)来构成的。

     

    各自的应用:
    如是业务不要求24x7.可以考虑用dg.一台机器用于生成报表和查询..一台只用于一般的业务处理.dg主要用容灾.双机,RAC均是提供可用性,但他们实现的方法不同,数据库均放在共享设备上。
    双机同一时刻只能有一台主机接管,另一台待用,这种方式只能保护实例,不能保护db,而且备机长期处于闲置,对资源是一种极大的浪费!

    展开全文
  • Oracle 11g RAC+DG项目实战-视频分享

    千次阅读 2013-10-28 10:45:25
    在15集视频中详细阐述了Oracle RAC的安装,RAC如何配置Active Data Guard,DG如何切换!绝对重量级的视频。掌握这个技术,资深Oracle DBA的岗位你也轻松秒杀! 实验手册在最后一集视频中! 概述: 本系列视频是...

    http://www.bego.cc/u/2718690/4446494

    这是黄伟老师精心制作的Oracle最高端的技术实战!在15集视频中详细阐述了Oracle RAC的安装,RAC如何配置Active Data Guard,DG如何切换!绝对重量级的视频。掌握这个技术,资深Oracle DBA的岗位你也轻松秒杀! 实验手册在最后一集视频中! 概述: 本系列视频是Oracle 11gR2 RAC+单实例Active Dataguard备库,属Oracle数据库技术中的高端应用场景。 视频背景取自于之前给某电商客户实施的一套高可用+容灾方案。

    jilinappleboy.bego.cc里面有更多更好的视频分享给大家,尽请关注,空间内容会不断更新。




    展开全文
  • 如何Oracle_RAC恢复一个节点总结

    万次阅读 2016-07-05 22:48:14
    如何Oracle_RAC恢复一个节点总结 作者:51cto出处:博客2013-08-01 13:39  Rac1 已坏  Rac3 正常  先在rac3上把rac1的信息删干净,然后重新填加rac1  步骤如下:  1,在rac1上运行DBCA,...

    如何Oracle_RAC恢复一个节点总结

    作者:51cto出处:博客2013-08-01 13:39

      Rac1 已坏

      Rac3 正常

      先在rac3上把rac1的信息删干净,然后重新填加rac1

      步骤如下:

      1,在rac1上运行DBCA,删除instance;

      2,如果有ASM,删除ASM实例,

      srVCtl stop asm -n rac1

      srvctl remove asm -n rac1;

      3,在rac3上执行updateNodeList脚本

      /u01/Oracle/oracle/product/10.2.0/crs/oui/bin/runInstaller -updateNodeList ORACLE_HOME=/u01/oracle/oracle/product/10.2.0/crs "CLUSTER_NODES=rac1";

      4,在rac3上执行rootdeletenode.sh脚本

      $/u01/oracle/oracle/product/10.2.0/crs/install/rootdeletenode.sh rac1 1;

      5,在rac3上执行updateNodeList脚本更新CRS信息

      runInstaller -updateNodeList ORACLE_HOME=$CRS_HOME "CLUSTER_NODES=rac1";

      6,看下是不是删除成功了

      /u01/oracle/oracle/product/10.2.0/crs/bin/cluvfy comp crs -n all

      下边添加:(CRS_HOME=/u01/oracle/oracle/product/10.2.0/crs)

      在新的rac1上配置和rac3完全一样的所有信息,包括环境

      1,在rac3,以oracle用户进入$CRS_HOME/oui/bin目录,执行addNode.sh脚本

      /u01/oracle/oracle/product/10.2.0/crs/oui/bin/addNode.sh

      按照步骤添加

      2,ORACLE_HOME=/u01/oracle/db

      在rac3,以oracle用户进入$ORACLE_HOME/oui/bin目录,执行addNode.sh脚本

      按照步骤添加

      3,配置listener

      在rac1上运行netca,选择cluster database,按步骤配置

      4,在rac3上运行DBCA添加新的instance

      先选择...Cluster database...然后instance management然后add an instance然后...

      重装之后把RAC3的u01目录全部复制过去,运行root.sh之后,就可以了,不过需要重新配置ASM

      部分命令

      /u01/oracle/oracle/product/10.2.0/crs/bin/crs_stop ora.rac1.gsd

      /u01/oracle/oracle/product/10.2.0/crs/bin/crs_start ora.rac1.gsd

      /u01/oracle/oracle/product/10.2.0/crs/bin/crs_stop ora.rac1.LISTENER_RAC1.lsnr

      /u01/oracle/oracle/product/10.2.0/crs/bin/crs_start ora.rac1.LISTENER_RAC1.lsnr

      root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/srvctl remove nodeapps -n rac1

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unreGISter ora.orcl.orcl1.inst

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unregister ora.rac1.ASM1.asm

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unregister ora.rac1.gsd

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unregister ora.rac1.ons

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unregister ora.rac1.vip

      /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unregister ora.rac1.LISTENER_RAC1.lsnr

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/bin/crs_unregister ora.rac1.LISTENER_RAC1.lsnr

      ./runInstaller -updateNodeList

      至此还有2 个节点的信息,使用以下命令删除:

      [root@rac1 ~]# /u01/oracle/oracle/product/10.2.0/crs/install/rootdeletenode.sh rac1,1

      [oracle@rac1 bin]$ /u01/oracle/oracle/product/10.2.0/crs/bin/olsnodes -n

      rac1 1

      到此节点删除完毕。

      通过以上可以看出,这种删除不过是把OCR 信息移除。

      ./srvctl remove nodeapps -n rac1,1

      可以发现RAC1 的信息已经全部逐出OCR。但是并没有完成所有的工作,还需要像开始一

      样更新CRS_HOME 和ORACLE_HOME

      [oracle@rac1 bin]$ ./runInstaller -updateNodeList ORACLE_HOME= /u01/oracle/oracle/product/10.2.0/crs "CLUSTER_NODES=rac3"

    展开全文
  • Oracle11g RAC集群启动关闭管理

    千次阅读 2015-11-05 09:42:57
    简单的Oracle11g RAC集群启动关闭管理1.切换到集群用户grid[root@rac1 ~]# su - grid2.查看集群资源状态(黄色标注11G不使用此资源 所以OFFLINE为正常状态)[grid@rac1 ~]$ crs_stat -t Name Type Target State Host...
  • oracle双机/RAC/Dataguard的区别

    千次阅读 2012-09-14 09:28:16
    高可用性解决方案分为4种 (DG、AR、RAC、HA): 一种是oracle提供的被用方法,Standby (=9i DataGuard) 一种是AR (高级复制Advanced Replication,在以前版本叫快照snapshot) 一种是oracle并行服务器8i的OPS (9i RAC...
  • 今天在配置RAC-DG时,修改主库参数文件后无法用修改后的PFILE启动RAC主数据库,碰到了LRM-00101错误,这是一个语法错误,但是一开始始终没找到解决方法: SQL> create pfile='/rmanbackup/initora11rac.ora' from ...
  • Data Guard 是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,包括软件的版本,目录存储结构,以及...
  • Oracle】11gRAC添加静态监听

    千次阅读 2018-05-07 07:50:58
    11gRAC添加静态监听查看listener文件的内容[grid@rac1 admin]$ more listener.ora查看监听状态[grid@rac1 admin]$ lsnrctl status listener [grid@rac1 admin]$ srvctl config network添加监听[grid@rac1 admin]$ ...
  • RAC 11g + ASM 简单拓扑图

    千次阅读 2013-11-30 10:23:33
    抽象问题,图形化 简单问题,多维化 常见问题,文字化 RAC 11g,拓扑化 Oracle 11 G RAC + ASM 黄金搭档!
  • 企业级RAC+DG架构部署

    千次阅读 2017-05-26 16:34:54
    Application Clusters,中文译为“实时应用集群”,是ORACLE甲骨文公司提供的在低成本服务器上构建高可用性数据库系统的解决方案,部署自由,无需购买额外部件,就可以实现多节点的负载均衡和故障转移功能,满足7*...
  • 本人新手,资源有限,希望能得到大神指点。想利用虚拟机搭建一个Oracle 11grac集群,方便以后的学习!
  • 今天在做RAC-DG实验时,碰到了不少的问题,这个问题是在操作用pifle创建spifle时出现的 由于在配置RAC-DG主库参数时,大部分人喜欢直接用alter system set xxx='xxx.xxx' scope=spfile; 而我由于不想一条条敲命令,...
  • oracle RAC如何正确地删除ASM磁盘组

    千次阅读 2018-01-20 18:00:04
    1.检查确认要删除的磁盘组是否在用 select * from dba_data_files; select * from dba_temp_files; select * from v$logfile; ...2.先在各节点上dismount磁盘组 ...alter diskgroup REDO01 dismount;...
  • Rhel7.3_Oracle12cR2的RAC搭建安装

    万次阅读 2017-05-02 11:26:31
    本次文档演示在Linux7环境安装Oracle12R2版本的RAC数据库。   安装环境: 虚拟机:vbox5.1 操作系统:rhel-server-7.3-x86_64 Grid集群安装包:linuxx64_12201_grid_home DB数据库安装包:linuxx64_12201_...
  • $GRID_HOME/bin和$ORACLEHOME/bin目录下的oracle文件权限导致ORA-01078和Linux-x86_64 Error故障处理案例
  • oracle rac 11.2.0.3 升级到11.2.0.4

    千次阅读 2015-08-15 17:54:20
    下载解压oracle安装文件,第三个文件为grid p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip p13390677_112040_Linux-x86-64_3of7.zip 解压完成之后,无需停止grid和db,...
  • CentOS7.5搭建ORACLE RAC+DG

    千次阅读 2018-12-28 15:15:12
    RAC+DG RAM:4G ,OS:CENTOS7.5 HOSTNAME:RAC1: PUBLIC IP:162.168.145.244,PRIV IP:192.168.89.219,VIP:192.168.145.144,scanip:192.168.145.140 HOSTNAME:RAC2: PUBLIC IP:162.168.145.245,PRIV ...
  • ORACLE rac集群概念和原理

    万次阅读 2019-04-17 15:21:35
    Oracle集群概念和原理 Oracle的三种高可用集群方案 1 RAC(Real Application Clusters) 多个Oracle服务器组成一个共享的Cache,而这些Oracle服务器共享一个基于网络的存储。这个系统可以容忍单机/或是多机失败...
  • Oracle主备库数据同步使用DataGuard。Data Guard 是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,...
1 2 3 4 5 ... 20
收藏数 6,689
精华内容 2,675
关键字:

dg原理 oracle rac