[Oracle工程师手记]CRSD 进程与 password 文件


客户发来报告,说是在 RAC 环境,每天进行这种测试,是可以成功的。

   sqlplus sys/password@hostname / as sysdba

 
但是某一天,似乎 GI 崩溃了。执行 下面的命令,一直没有返回结果:

$ crsctl stat res -t

 
而另外一个节点,执行时,返回如下的信息:

$crsctl stat res -t
CRS-4535: Unable to communicate with Cluster Ready Services
CRS-4000: Command Status failed or completed with an error.
$

 
但是,让客户感到奇怪的事情发生了:

如果客户用普通用户远程连接数据库,是可以成功的,但是如果用 sys 用户远程连接数据库,则失败。

其实这个现象与 GI 的动作有关,CRSD 进程在 sys 用户来访问数据库时,会去读取 password文件,来对比用户提供的口令是否和 password 文件中的匹配。

当 GI 已经 hang 住时,它根本没有办法访问 password 文件,所以,sys用户访问数据库时,会失败,而普通用户的访问,则可以成功。



posted @ 2021-04-06 19:19  健哥的数据花园  阅读(158)  评论(0编辑  收藏  举报