热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linuxcrs,crs常用命令

crs常用命令常用的crs命令如下:$ORA_CRS_HOMEbincrs_stat–t此命令主要用来检查crs资源状态例如[oraclerac2css]$$ORA_

crs常用命令

常用的crs命令如下:

$ORA_CRS_HOME/bin/crs_stat –t

此命令主要用来检查crs资源状态

例如

[oracle@rac2 css]$ $ORA_CRS_HOME/bin/crs_stat -t

Name Type Target State Host

------------------------------------------------------------

ora....CL1.srv application ONLINE ONLINE rac1

ora....CL2.srv application ONLINE ONLINE rac2

ora....TEST.cs application ONLINE ONLINE rac1

ora....L1.inst application ONLINE ONLINE rac1

ora....L2.inst application ONLINE ONLINE rac2

ora.ORCL.db application ONLINE ONLINE rac1

ora....SM1.asm application ONLINE ONLINE rac1

ora....C1.lsnr application ONLINE ONLINE rac1

ora.rac1.gsd application ONLINE ONLINE rac1

ora.rac1.ons application ONLINE ONLINE rac1

ora.rac1.vip application ONLINE ONLINE rac1

ora....SM2.asm application ONLINE ONLINE rac2

ora....C2.lsnr application ONLINE ONLINE rac2

ora.rac2.gsd application ONLINE ONLINE rac2

ora.rac2.ons application ONLINE ONLINE rac2

ora.rac2.vip application ONLINE ONLINE rac2

[oracle@rac2 css]$

$ORA_CRS_HOME/bin/crs_start –all

此命令用来启动所有的集群服务,但是启动的前提是 资源状态State不能是UNKNOWN。

$ORA_CRS_HOME/bin/crs_start 集群服务名(集群服务名可以通过$ORA_CRS_HOME/bin/crs_stat得到)

$ORA_CRS_HOME/bin/crs_stop -all

$ORA_CRS_HOME/bin/crs_stop 集群服务名(集群服务名可以通过$ORA_CRS_HOME/bin/crs_stat得到)

上面的一组crs命令是用来启动关闭crs服务的,下面通过一个真实的环境,具体讲解这些命令的使用。

举例如下:

Oracle RAC在安装完毕后,重启RAC,一些服务不能启动,手动启动也没用。

下面是系统自动启动以后的情况;

[oracle@rac1 ~]$ crs_stat -t

Name Type Target State Host

------------------------------------------------------------

ora....CL1.srv application ONLINE UNKNOWN rac1

ora....CL2.srv application ONLINE UNKNOWN rac2

ora....TEST.cs application ONLINE UNKNOWN rac2

ora....L1.inst application ONLINE OFFLINE

ora....L2.inst application ONLINE OFFLINE

ora.ORCL.db application ONLINE UNKNOWN rac1

ora....SM1.asm application ONLINE UNKNOWN rac1

ora....C1.lsnr application ONLINE UNKNOWN rac1

ora.rac1.gsd application ONLINE UNKNOWN rac1

ora.rac1.ons application ONLINE UNKNOWN rac1

ora.rac1.vip application ONLINE ONLINE rac1

ora....SM2.asm application ONLINE UNKNOWN rac2

ora....C2.lsnr application ONLINE UNKNOWN rac2

ora.rac2.gsd application ONLINE UNKNOWN rac2

ora.rac2.ons application ONLINE UNKNOWN rac2

ora.rac2.vip application ONLINE ONLINE rac2

[oracle@rac1 ~]$

可以看到,只有vip是能自动启动的!其它资源都处于UNKNOWN状态下。

手工用srvctl启动试试!

$ srvctl start nodeapps -n rac1

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.gsd' has placement error.

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.vip' has placement error.

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.ons' has placement error.

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.LISTENER_RAC1.lsnr' has placement error.

$ORA_CRS_HOME/bin/crsctl check crs 用于检查后台进程状态

测试crs:

crs主要进程

(1)crsd

负责管理ha操作

管理crs资源,如linstener,vip,ons,gsn等

由root用户管理、启动

(2)ocssd

管理各节点的关系,用于节点间通信

由oracle用户运行管理

(3)oprocd

集群进程管理 —Process monitor for the cluster.

仅在没有使用vendor的集群软件状态下运行

(4)evmd

事件检测进程,由oracle用户运行管理

$crsctl check crs

CSS appears healthy

CRS appears healthy

EVM appears healthy

$ORA_CRS_HOME/bin/crsctl start resources 启动crs资源

[oracle@rac1 bin]$ crsctl start resources

Starting resources.

Successfully started CRS resources

[oracle@rac1 bin]$ pwd

/oracle/app/oracle/oracle/product/10.2.0/crs/bin

一些图形化工具需要启动gsd像dbca

[oracle@rac1 bin]$ gsdctl stop

[oracle@rac1 bin]$ gsdctl status

[oracle@rac1 bin]$ ./gsdctl status

[oracle@rac1 bin]$ gsdctl start

[oracle@rac1 bin]$ srvctl start nodeapps -n rac1

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.gsd' has placement error.

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.vip' has placement error.

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.ons' has placement error.

CRS-1028: Dependency analysis failed because of:

CRS-0223: Resource 'ora.rac1.LISTENER_RAC1.lsnr' has placement error.

[oracle@rac1 ~]$ crs_stat -t

Name Type Target State Host

------------------------------------------------------------

ora....CL1.srv application ONLINE UNKNOWN rac1

ora....CL2.srv application ONLINE UNKNOWN rac2

ora....TEST.cs application ONLINE UNKNOWN rac2

ora....L1.inst application ONLINE OFFLINE

ora....L2.inst application ONLINE OFFLINE

ora.ORCL.db application ONLINE UNKNOWN rac1

ora....SM1.asm application ONLINE UNKNOWN rac1

ora....C1.lsnr application ONLINE UNKNOWN rac1

ora.rac1.gsd application ONLINE UNKNOWN rac1

ora.rac1.ons application ONLINE UNKNOWN rac1

ora.rac1.vip application ONLINE ONLINE rac1

ora....SM2.asm application ONLINE UNKNOWN rac2

ora....C2.lsnr application ONLINE UNKNOWN rac2

ora.rac2.gsd application ONLINE UNKNOWN rac2

ora.rac2.ons application ONLINE UNKNOWN rac2

ora.rac2.vip application ONLINE ONLINE rac2

可以看到,仍然是启动后的原始状态。

从上面的显示可以知道,每个资源的State显示为UNKNOWN,应该是由于两个节点时间不同步,进而造成crs在启动的时候无法认到系统已经注册的资源造成的。

解决方法:

首先,保证两个节点时间保持同步,ORACLE 10g RAC两个节点之间有10几秒的时间误差,不会对应用造成影响。但是过分大的时间误差可能导致某个节点down机,

或者节点不断重启。然后执行如下操作:

$ORA_CRS_HOME/bin/crs_stop –all只能停掉State为ONLINE的服务,状态为UNKNOWN的资源不能通过这个命令关闭

$ORA_CRS_HOME/bin/crsctl start crs 启动crs,需要超级用户操作。

$ORA_CRS_HOME/bin/crsctl stop crs 关闭crs,需要超级用户操作。

在rac环境中如果使用crs_stop -all去停rac服务时,很有可能会出现crs中的一些服务的状态是UNKNOWN,这时我们可以采用两种方法去重新启动crs服务:

1:转换到root用户下用/etc/init.d/init.crs stop先禁用crs,然后再用/etc/init.d/init.crs start去启用crs,启用crs后会自动启动crs的一系列服务,

注意此种方法需要在两台节点上都执行;

2:是用crs_stop -f  参数把crs中状态是UNKNOWN的服务关掉,

然后再用crs_start -f (加一个-f的参数)启动所有的服务就可以,要分别在两个节点上执行

其它一些常用命令:

$ORA_CRS_HOME/bin/crs_unregister 取消注册crs

$ORA_CRS_HOME/bin/ocrcheck 检查ocr设置信息用ocrcheck

$ORA_CRS_HOME/bin/crsctl query css votedisk 检查表决磁盘信息

举例:

[oracle@rac2 css]$ ocrcheck

Status of Oracle Cluster Registry is as follows :

Version : 2

Total space (kbytes) : 104344

Used space (kbytes) : 4568

Available space (kbytes) : 99776

ID : 328160432

Device/File Name : /dev/raw/raw4

Device/File integrity check succeeded

Device/File Name : /dev/raw/raw5

Device/File integrity check succeeded

Cluster registry integrity check succeeded

[oracle@rac2 css]$ $ORA_CRS_HOME/bin/ocrcheck

Status of Oracle Cluster Registry is as follows :

Version : 2

Total space (kbytes) : 104344

Used space (kbytes) : 4568

Available space (kbytes) : 99776

ID : 328160432

Device/File Name : /dev/raw/raw4

Device/File integrity check succeeded

Device/File Name : /dev/raw/raw5

Device/File integrity check succeeded

Cluster registry integrity check succeeded

[oracle@rac2 css]$ crsctl query css votedisk

0. 0 /dev/raw/raw6

1. 0 /dev/raw/raw7

2. 0 /dev/raw/raw8

located 3 votedisk(s).

注意:

执行crsctl命令的可以是root用户,也可以是oracle用户,如果是root用户要指定绝对路径,但是对于crsctl start crs和crsctl stop crs必须是root用户来执行。

主要log位置

$ORA_CRS_HOME/log/节点主机名/racg

$ORA_CRS_HOME/log/节点主机名/crsd

$ORA_CRS_HOME/crs/init

$ORA_CRS_HOME/css/log

$ORA_CRS_HOME/css/init

$ORA_CRS_HOME/evm/log

$ORA_CRS_HOME/evm/init

$ORA_CRS_HOME/srvm/log

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22253646/viewspace-666935/,如需转载,请注明出处,否则将追究法律责任。



推荐阅读
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • ASP.NET2.0数据教程之十四:使用FormView的模板
    本文介绍了在ASP.NET 2.0中使用FormView控件来实现自定义的显示外观,与GridView和DetailsView不同,FormView使用模板来呈现,可以实现不规则的外观呈现。同时还介绍了TemplateField的用法和FormView与DetailsView的区别。 ... [详细]
  • Oracle seg,V$TEMPSEG_USAGE与Oracle排序的关系及使用方法
    本文介绍了Oracle seg,V$TEMPSEG_USAGE与Oracle排序之间的关系,V$TEMPSEG_USAGE是V_$SORT_USAGE的同义词,通过查询dba_objects和dba_synonyms视图可以了解到它们的详细信息。同时,还探讨了V$TEMPSEG_USAGE的使用方法。 ... [详细]
author-avatar
Mr木木木木_823
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有