RAC数据库与单实例的差异主要表现在多个实例通过集群件来统一管理共享的资源。因此原有的单实例的管理方式,如数据库、监听器等的关闭启动等可以使用原有的方式进行,也可以通过集群管理工具,命令行来集中管理,这也是推荐的管理方式。由于集群件crs位于数据库之上,即RAC数据库依赖于集群件,因此数据库的启动与关闭应该结合集群来考虑,下面以10g RAC来描述数据库启动与关闭过程,不涉及集群层的启动与关闭。
Name Type Target State Host
环境:OEL 5.7 + Oracle 10.2.0.5 Clusterware + Oracle 10.2.0.5 RAC 故障:数据库open时报错ORA-1172,ORA-1151
所有实例和服务的状态 $ srvctl status database -d orcl Instance orcl1 is running on node linux1 Instance orcl2 is running on node linux2 单个实例的状态 $ srvctl status instance -d orcl -i orcl2 Instance orcl2 is running on node linux2 在数据库全局命名服务的状态 $ srvctl status serv
$ srvctl status instance -d orcl -i orcl2
今天在虚拟机上启动rac,发现有一个节点怎么都起不了。另外一个节点没问题。 SQL> startup nomount ORA-29702: error occurred in Cluster Group Service operation 尝试使用crs_stat查看crs的组件状态,也报错了。 -bash-4.1$ crs_stat -t CRS-0184: Cannot communicate with the CRS daemon. 查看alert日志,发现在最后是因为29702的错误导致的。 S
启动完集群后可以用如下命令检查集群状态,所有的服务都要是ONLINE才是正常的,如下 [root@node1 bin]$crs_stat -t Name Type Target State Host ------------------------------------------------------------ ora....w1.inst application ONLINE ONLINE node1 ora....w2.inst application ONLINE ONLINE node2 ora.cjw.db application ONLINE ONLINE node1 ora....SM1.asm application ONLINE ONLINE node1 ora....E1.lsnr application ONLINE ONLINE node1 ora.node1.gsd application ONLINE ONLINE node1 ora.node1.ons application ONLINE ONLINE node1 ora.node1.vip application ONLINE ONLINE node1 ora....SM2.asm application ONLINE ONLINE node2 ora....E2.lsnr application ONLINE ONLINE node2 ora.node2.gsd application ONLINE ONLINE node2 ora.node2.ons application ONLINE ONLINE node2 ora.node2.vip application ONLINE ONLINE node2 ps –ef |grep ora 下面是一些简介,了解一下就可以了,有时间可以深入研究。
引言:这篇文章主要是介绍了 Oracle RAC 集群服务的启动与关闭顺序,很多初学者不太理解 RAC,对 RAC 知识了解甚少,对其启动与关闭的顺序和原理不是特别清晰。因此分享了这篇文章,感谢原作者辛苦的付出,更加地感谢大家对此篇文章的浏览。
Oracle 11g RAC中,发现oc4j以及gsd服务都处于offline状态,这是Oracle 11g RAC默认情形。即便如此,并不影响数据库的使用,因为 oc4j 是用于WLM 的一个资源, WLM在 11.2.0.2 才可用。GSD则是用于支持dbca,srvctl,oem等的交互工具。本文描述将这两个服务切换到online。
一. 现有的RAC 节点的11.2.0.4,在本文档中,我们要演示删除一个节点:rac3所有删除操作都在环境正常运行状态下进行。
[03:49:06 oracle(db)@rac1 ~]$ srvctl config database -d prod
不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册。与单实例相同,RAC非缺省端口的监听器也是通过设置参数local_listener来达到目的。除此之外,还可以对实例进行远程注册,以达到负载均衡的目的。这是通过一个参数remote_listener来实现。
最近虚拟机下的Oracle 10g RAC搬家,搬家完毕之后,Oracle 集群resource之VIP无法正常启动,收到了CRS-0233: Resource or relatives are currently involved with another operation 错误提示。为为啥呢,原来啊,搬家了地址发生变化了,你得使用你家里的新地址阿....
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC
Oracle RAC中,除了基于客户端的TAF方式之外,还有基于服务器端的TAF方式,可以把服务端的TAF方式看作是客户端TAF方式的一个升级版吧。服务器端的TAF,当然是需要在服务器端进行配置了,这个是通过Service来完成的。本文主要描述Oracle 10g rac 下通过service方式配置服务器端的TAF。
用户创建表空间时误将数据文件放到了本地盘,重启数据库时一个实例启动不了,只能offline该表空间后启动数据库。现用户想知道怎样能把这个表空间数据文件中的数据恢复出来。
应用程序工作负载在Oracle 10g中可以被定为services,也称之为服务,能够在单实例中使用,也能够在RAC中单独使用和管理。因此整个数据库负载能够被分割为多个不同的services,通过管理service能够简化用户或session的管理。其次services特性的重要体现在RAC之中用于实现负载均衡与故障转移。本文描述什么是services,以及使用services的好处,以及如何使用services.
Oracle RAC 客户端故障转移(failover),当采用TAF方式时,对于已经建立连接的客户端,在连接的实例或节点出现故障时,客户端无需再次发出连接请求,仍然可以继续之前的数据库操作,此称之为透明故障转移。本文描述基于Oracle 10g rac,客户端TAF方式的故障转移并给出示例。
Oracle RAC 集群最突出的表现就是高可用性,这些内容主要包括load balance以及failover,通过这些技术使得单点故障不影响客户端端应用程序对数据库的正常访问,以及通过创建service实现节点间负载均衡。本文主要描述Oracle 10g rac环境下的Oracle failover测试。 下面是一些关于这方面的基础参考或相关链接: 有关负监听配置,载均衡(load balance)以及Oracle service请参考
useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper,dba grid
在Oracle RAC环境中,对集群中的日志进行定期检查是必不可少的。通过查看集群日志,可以早期定位集群环境中出现的问题,以便将问题消灭在萌芽状态。下面简单介绍一下有关Oracle集群环境中日志的结构,有助于方便快速地查找所需的日志文件。
在对集群做调整前。如:增删节点等操作前,应该对OCR进行一次备份。能够使用export备份到指定文件。
但是绝大部分操作其实都是oracle用户来操作,比如启停数据库,操作完成以后就需要检查下集群资源状态。 看到好多DBA在现场操作时就是来回各种切换或开多个窗口。
ORACLE RAC 数据库服务器上 srvctl 常用的一些操作命令, 检查节点状态,检查VIP状态及配置等.作为笔记,以备不时之需.srvctl 是ORACLE RAC集群配置管理的工具,通过srvctl这个强大的工具来管理RAC,以下为对srvctl命令使用总结.
rac3节点上安装须要的rpm包,本实验环境使用的是OEL系统,所以使用oracle-validated。
需要维修主机,上面是RAC的备节点。 变更内容为起停这个节点的数据库实例和crs集群。实际操作的时候很顺利,没什么问题:
这套rac环境是搭建在华为云ECS上的,操作系统为CentOS 7.6。根据经验,rac不能启动,主要是2个方面的原因:一个是共享存储,一个网络。共享存储常见原因是盘掉了,或盘坏了,或多路径软件出问题等等,而网络问题常见原因是私网网卡坏了,或节点之间网络不通(注意:修改ssh端口或修改oracle和grid密码不会影响rac的正常运行)。
Linux平台 Oracle 11gR2 RAC安装指导: Part1:Linux平台 Oracle 11gR2 RAC安装Part1:准备工作 Part2:Linux平台 Oracle 11gR2 RAC安装Part2:GI安装 Part3:Linux平台 Oracle 11gR2 RAC安装Part3:DB安装
==禁止服务在某个实例上运行 srvctl disable service -d orcl -s servicename -i orcl1
很多年前的一套测试环境,今天发现集群无法启动。手工尝试启动crs,集群日志也无任何输出。进一步检查集群配置:
Oracle 11g RAC安装时,在第一个节点执行root.sh时遭遇了CRS-0184/PRCR-1070,Google了很多帖子也没有找到解决办法。呜呜,还是静下心来看日志!!最后的发现原来是一个不经意的小问题,如下面的描述。
安装好sles 10 sp3 + Oracle 10g RAC之后,在配置监听器时,总是提示主机bo2dbp上的监听服务已经在运行,忽略错误之后手动在bo2dbp节点上启,总是收到TNS-12
虽然通过DBCA(DataBase Configuration Assistant,数据库配置助手)创建的数据库会自动加入CRS中,但通过RMAN创建的数据库是不会被加入CRS中的,在这种情况下就需要手动添加,将数据库加入CRS中后就可以通过srvctl来管理数据库了。
Oracle 11g RAC中crs_stat命令较之前的版本多出了很多新的不同的资源类型,缺省情况下,使用crs_stat -t来查看资源是密密麻麻一大片,看起来着实费力。作者Paul Elbow, Enkitec为我们提供了一个crsstat脚本以更清晰的格式来展现Oracle 11g RAC下的所有资源类型,见本文下面的描述。
大概也许可能是一两年前吧,在我个人 16G 的PC 笔记本上通过虚拟机安装了一套 19c RAC,一般情况下也不怎么使用,只是偶尔会用一下,记得上次使用还是去年 8 月份,由于好久没使用了,这两天一开机就因为内存不足,宿主机 CPU 100% 内存 100% 卡死,整个 PC 重启了,再次打开虚拟机,两节点 CRSD 进程则无法启动,这样可能导致了我后面的故障。
本文安装环境:RHEL 6.5 + Oracle 12.2.0.1 GI & RAC
某日,朋友跟我讨论他巡检oracle数据库时遇到的一个情况,在使用root用户切换grid用户时报错-bash: fork: retry: Resource temporarily unavailable,一般这个报错都是因为/etc/security/limits.conf或/etc/security/limits.d/下相关用户nproc设置过小导致,但是定位一波三折,最终了解清楚了nproc参数生成、限制,将案例详细分享,供大家参考。
Linux平台 Oracle 19c RAC安装指导: Part1:Linux平台 Oracle 19c RAC安装Part1:准备工作 Part2:Linux平台 Oracle 19c RAC安装Part2:GI配置 Part3:Linux平台 Oracle 19c RAC安装Part3:DB配置
测试环境突然一个节点的数据库无法启动,报错很清楚,找不到控制文件,而控制文件在ASM上,第一个节点正常,下面是处理流程。
在某些特定的情形下,有时候需要从客户端连接到RAC中指定的实例,而不是由客户端Load_balance来动态选择或者是通过服务器端的监听器根据负载情形来转发。对此我们可以通过为tnsnames.ora中特定的网络服务名添加instance_name子项,或者是单独建立一个指向所需实例的网络服务名,下面描述这两种情形。
有些时候,由于数据库安装较早规划不合理直接使用了默认的数据库端口号,出于安全考虑,不管是服务器还是各种数据库尽量少用默认端口,默认账号密码等,近期就遇到了这样的要求,由于一套 Oracle 19c RAC 数据库安装使用了默认的端口号 1521 ,这里需要将其修改为 11521,下面一起来看看仅修改端口号该如何操作。
Linux平台 Oracle 18c RAC安装指导: Part1:Linux平台 Oracle 18c RAC安装Part1:准备工作 Part2:Linux平台 Oracle 18c RAC安装Part2:GI配置 Part3:Linux平台 Oracle 18c RAC安装Part3:DB配置
环境:RHEL 6.5 + Oracle 11.2.0.4 单节点RAC 需求:单节点RAC添加新节点
[root@rac01 ~]# vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
领取专属 10元无门槛券
手把手带您无忧上云