Rac环境:

  1. RAC版本异同:[10R2,11R1(和10类似)],11R2,12c:
    1. 目录:
      1. 10.2的ASM需要单独的目录(oracle home):rdbms home,asm home, crs home
      2. 11.2:rdbms,grid(crs+asm)
    2. IP:
      1. 10.2有私有IP(private IP)公有IP(public IP)和虚拟IP(VIP);Private IP是用来做内部连接;Public IP和VIP是外部连接,并且在同一个网段。
      2. 11.2在外部连接(公有IP和虚拟IP)之上加入SCAN IP,Scan Ip有3个。
    3. 磁盘:
      1. 11.2之前,OCR和voting disks在裸设备上,11.2之后放在asm,并且oracle不在支持裸设备。
    4. 具体配置举例:
      1. 3节点Rac,OS:sun solaris,version 11.2.3, ASM
      2. 常用的cmd:crsctl,srvctl,crs_stat, crsctl status resources
  2. 服务service:
    1. 使用service达到load balance的目的:每个节点跑特定的应用。
  3. ASM:
    1. 优缺点:
      1. 易于管理:加减磁盘,易于条带化和镜像。
      2. 文件名非常奇怪,非常难以复制,难以用ftp传输文件,有时候非常危险,有时候SA不懂ASM,会导致磁盘损坏。
      3. HA不能保护数据。
    2. RAC的性能问题:
      1. 主要的问题是Cache Fusion(RAC为了保持数据一致性的一种内存机制。),Cache Fusion增加了很多额外的开销,所以两个节点的性能不一定比一个好,所以说RAC并不提高性能。实际操作时候,用service对rac的每个节点要分配功能,比如一个节点专门负责DML,一个节点负责reporting。
      2. 关于补丁:In Rolling Patch mode:每个实例逐一关闭,patch crs和oracle rdbms home,使用local parameter in opatch。
    3. Load balance:
      1. 在客户端,SCAN作为主机名被使用在tnsnames.ora,这样oracle可以动态分配节点,scan相当于封装了真实的IP。
      2. 在服务器端,当scan listener处理从客户端连进来的call时,会将它放到least load(从cpu和连入进程的使用情况)的node上。
      3. 所以remote listener要恰当设置。一般rac的每个节点,我们有两种listener,本地和scan。从listener.ora可以看到。
    4. 关于init parameters:
      1. 在init.ora文件里,我们有两种参数文件:local 和global,global参数前带*号。
      2. Cluster_database 必须是TRUE。
      3. 其它:control_files,cluster_database_instances,Instance parameters(starting with instance name),thread,instance_number,undo_tablespace,
      4. 有些参数在每个节点上可以不一样,也可以都一样。如内存参数(SGA,PGA,memory target).
    5. Rac中共享与非共享:
      1. 非共享:Binaries,alert log,redo,archive logs,undo tablespace
      2. 共享:control files, spfile, temporary files
  4. 案例:
    1. 性能案例1:在OEM我们观察到:Global Cache buffer busy,GC current block 2-way/3-way and cache buffer chains(hot blocks)
      1. 我们在数据库上有很多增删改的操作,导致buffer cache同步有问题。如果dml操作同时在不同节点运行,会马上要求global cache同步,导致很多系统等待。
      2. 解决:节点功能切分。一个节点用于增删改,另一个用于报告。
    2. 性能案例2:在OEM性能表上(log file sync),每小时有7分钟会出现commit high。
      1. 首先让应用组查代码,查看commit频率。
      2. 数据库,有任何bug相关?
      3. 存储组,看是否有任何问题,我们把redo logs放在快盘上,仍然解决不了问题。
      4. 使用BLUESTRIPE软件(可以在第二级别检测磁盘IO)。发现在那段时间,有一个root进程消耗大量IO,并且和数据库竞争。我们在crontab里面重新安排这个进程运行的时间段,问题解决。
    3. 回复案例:SA扫描asm磁盘,导致数据库崩溃。
      1. HA不能保证存储安全,在alert log里面有很多ora7445和ora600错误.块坏错误,数据库不能重启,或者数据库起来了,但是某些数据不可以获得。
      2. 我们需要incomplete RMAN recovery.(有个cutoff time,在那样以后的数据会丢失)
      3. recover script need two steps(restore datafiles and recover with incremental backups or archives)
    4. 关于ASM:在restore以后,如果recover失败,重新跑脚本的时候,在 linux文件系统下oracle不会restore数据文件,只会restore incremental backup pieces/archive logs.在ASM里面,oracle会重新restore 数据文件,会花更多的时间。所以需要在脚本里跳过restore datafile这一部分。直接recover。
    5. 关于备份恢复:增量备份真的很重要。

Rac & DG的更多相关文章

  1. 一步一步搭建 oracle 11gR2 rac + dg 之前传 (一)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg  之前传 (一) 转自 一步一步搭建 oracle 11gR2 rac + dg ...

  2. 一步一步搭建oracle 11gR2 rac+dg之环境准备(二)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之环境准备 (二) 一步一步搭建oracle 11gR2 rac+dg之环境准备 ...

  3. 一步一步搭建oracle 11gR2 rac+dg之共享磁盘设置(三)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之共享磁盘准备 (三) 注意:这一步是配置rac的过程中非常重要的一步,很多童鞋 ...

  4. 一步一步搭建 oracle 11gR2 rac+dg之grid安装(四)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之grid安装 (四) 转自 一步一步搭建 oracle 11gR2 rac+d ...

  5. 一步一步搭建oracle 11gR2 rac+dg之database安装(五)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之database安装 (五)   转自 一步一步搭建oracle 11gR2 ...

  6. 一步一步搭建11gR2 rac+dg之安装rac出现问题解决(六)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之安装rac出现的问题 (六) 本文转自 一步一步搭建11gR2 rac+dg之 ...

  7. 一步一步搭建11gR2 rac+dg之DG 机器配置(七)【转】

    DG 机器配置 转自: 一步一步搭建11gR2 rac+dg之DG 机器配置(七)-lhrbest-ITPUB博客http://blog.itpub.net/26736162/viewspace-12 ...

  8. 一步一步搭建11gR2 rac+dg之配置单实例的DG(八)【转】

    RAC主库配置单实例ActiveDataguard 本文文档结构: 这里配置的过程中需要注意的一项是多看看rac1和rac2以及dg的告警日志会对配置过程有更深刻的理解...配置oracle rac的 ...

  9. Deploy 11.2.0.3 RAC+DG on Windows 2008 R2 Step by Step

    环境规划: 节点1: tc1 192.168.56.101 内存:2G 节点2: tc2 192.168.56.102 内存:2G 物理备库:tcdg192.168.56.108内存:1.5G 操作系 ...

  10. Oracle11g RAC+DG搭建

    项目环境准备 3.1虚拟机配置 版本选择 注意Linux操作系统.此次项目我选择的版本是Oracle Enterprise Linux 5.4 内存的设置 本人电脑物理内存8G,由于此次实验要开三台虚 ...

随机推荐

  1. spring mvc 重新定向到一个新的Url

    在写项目的时候要求根据请求的参数的不同重新将请求分发,在查阅了spring mvc的一些资料无果后(想使用拦截器去做)就没办法使用重定向的方式去写了 /** * 通过访问API的方式分发请求 * * ...

  2. ubuntu系统下安装gstreamer的ffmpeg支持

    当您在安装gstreamer到您的ubuntu系统中时,为了更好地进行流媒体开发,需要安装ffmpeg支持,但一般情况下,直接使用 sudo apt-get install gstreamer0.10 ...

  3. codeforces 678C C. Joty and Chocolate(水题)

    题目链接: C. Joty and Chocolate time limit per test 1 second memory limit per test 256 megabytes input s ...

  4. java基础-在dos控制台编写简易的java程序

    第一步:在文件夹中修改隐藏的文件扩展名,让其文件的扩展名全部显示: 第二步:在文件夹中新建一个text文件,将其扩展名属性改为Hello.java的文件扩展名: 第三步:点击右键打开方式用txt文本打 ...

  5. 【PHP基础】位运算与原码,反码,补码

    对于有符号的而言:   ①二进制的最高位是符号位: 0表示正数,1表示负数   ②正数的原码,反码,补码都一样   ③负数的反码=它的原码符号位不变,其它位取反(0->1,1->0)    ...

  6. android 底部tabview模板

    以下只是我个人的浅见,大神请忽略~ 底部tab的实现如下图: 现在实现这种界面是有很多方法的,但是对于android新手来说,实现这样的界面还是有难度的. 在网上找到了一个别人写好的底部tab模板,修 ...

  7. Python类和实例

    面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可 ...

  8. 1 对WinMain的理解

    就像C语言的main是它的程序路口一样,windows的程序入口是WinMain,WinMain的定义可以查看winbase.h文件. Hello Windows(c语言中的Hello world!) ...

  9. ping命令的用法大全!

    1)如何查看本机所开端口: 用netstat -an命令查看!再stat下面有一些英文,我来简单说一下这些英文具体都代表什么- LISTEN:侦听来自远方的TCP端口的连接请求 SYN-SENT:再发 ...

  10. 关于Java中计算日期差值不准确问题

    1.字符串日期相减 如:2016-4-1,必须先将此字符串转成Date对象,并且, 格式必须为:yyyy—MM—dd  HH:mm:ss. 如果不转就直接计算(2016-4-1)两个这样的日期,则误差 ...