首页 » 数据库 » Oracle

Oracle rac案例讲解

Oracle 2021-12-15

rac是什么?

多个不同服务器上的实例,访问共享的数据库文件,扩展了CPU和内存,提高性能;多节点,实现了HA。

rac解决什么问题

  1. 高可用性:自动切换、负载均衡
  2. 高性能:多实例、更多连接、并发执行
  3. 高扩展:不停机扩展节点。

怎么实现的

组成

3个层级:

  1. 集群软件:集群管理,节点增删、心跳、同步;包括2个组件:表决磁盘、集群注册服务。
  2. rac数据库软件:提供数据库实例;
  3. rac数据库:共享存储,共享文件。

1.拓扑图

Oracle rac案例讲解

2.存储划分例子

现在共享存储建议ASM,仅说明用。

Oracle rac案例讲解

rac常用操作

1.启停

关闭:监听–>db–>cluster–>os

  1. 关闭监听(grid用户),阻止新的程序在连接进来
    srvctl stop listener
  2. 写脏块
    alter systerm checkpoint;(多执行几次)
  3. 关闭数据库(grid用户下) racdb指的是数据库全局唯一名。执行时间会较长,不要终止
    /u01/app/11.2.0/grid/bin/srvctl stop database -d racdb -o immediate
  4. 关闭集群件(root用户)
    /u01/app/11.2.0/grid/bin/crsctl stop cluster -all
  5. 查看资源状态
    /u01/app/11.2.0/grid/bin/crsctl status resource -t
  6. 关闭操作系统(root)
    shutdown -h now

-----------启动RAC数据库-----

cluster–>db

  1. 默认情况下,集群软件会随着操作系统的启动而启动(root)。
    检查集群资源:/u01/app/11.2.0/grid/bin/crsctl status resource -t --所有都需要是online状态
    启动集群资源:/u01/app/11.2.0/grid/bin/crsctl start cluster -all
  2. 启动数据库(grid)
    srvctl start database -d racdb
  3. 查看监听状态。默认情况下监听会随着集群软件启动(grid)。
    srvctl status listener --查看监听状态
    srvctl start listener --启动监听
  4. 登录plsql进行连接测试。

2.增删

  1. 配置OS, 和安装RAC的配置一样。Mount上共享磁盘。但是不要安装Oracle 和 grid software
  2. 设置节点间的ssh, 使用grid安装包中的脚本
  3. 在grid 用户下添加节点,主要是添加grid组件 ,会copy grid_home下的内容到新的节点
  4. oracle用户下添加节点,主要是添加oracle组件,会copy oracle_home下的内容到新的节点
  5. 使用DBCA添加新的instance 或者手工添加也可以 (本次dbca添加)

难点:

1.节点数据的一致性。

单实例,内存里有事务信息、锁,如果把不同节点的数据同步,避免不同节点冲突。CacheFusion,缓存融合
服务器间缓存共享。与hadoop的分布式不太一样,hdp基于分布式文件系统,在节点上基于block计算,然后合并,是真独立,不存在全局资源目录GRD的概念。rac是共享存储,还是一个文件,没有分治。

问题:

hba卡

光纤网卡

虚拟ip的作用?

安装Oracle的过程中自动生成绑定在公网网卡上,并对外提供服务(公网网卡的虚拟ip)
如果rac2失败,其虚拟ip会自动漂移到rac1的物理网卡上;客户端请求进来,rac2会返回失败的消息,让重新连接vip1进来。
如果没有vip,客户单请求进来,会直到tcp\ip连接3次尝试失败后,返回失败,体验很差。
vip是HA实现的重要手段。

到此这篇关于Oracle rac案例讲解的文章就介绍到这了,更多相关Oracle rac内容请搜索www.580doc.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.580doc.com!


上一篇:没有了下一篇:Oracle区别ADG与DG案例详解
程序园_程序员的世界 Copyright © 2020- www.580doc.com. Some Rights Reserved.