一、集群软件(关闭处理节点的集群和数据库)
1. 找一套相同版本正常的环境登入 $GRID_HOME
(若仅拷贝 $GRID_HOME 目录无法修改所有权限,则拷贝整个 /oracle 目录)
方法一
getfacl -pR ./ > backup.txt
替换 backup.txt 中的 主机名、 ASM 名和数据库名
:1,$s/rac1/rac2/g --(:n,$s/ rac2/ rac1/g 替换第 n 行开始到最后一行中每一行所有 rac1 为 rac2)
拷贝至当前环境执行恢复
setfacl --restore=backup.txt
方法二
find -uid [Grid或root用户id号]
前面加上 chown grid/root 后跟上面输出的内容
awk拼接命令:find -uid 3000 |awk '{print "chown grid:oinstall " $1}'
3.启动集群
二、数据库软件
启动数据库 alert 相关报错:
WARNING:failed to register ASMB0 with ASM instance ORA-01034:ORACLE not available ORA-27121:unable to determine size of shared memory segments Linux-x86_64 Error:13:Permission denied
关键的两个软件
$ORACLE_HOME/bin/oracle
[oracle@rac1 ~]$ ls -tlr $ORACLE_HOME/bin/oracle -rwsr-s--x 1 oracle dba 407944920 Mar 4 19:36 /oracle/app/product/12.2.0/db_1/bin/oracle $GRID_HOME/bin/oracle [grid@rac1 gi]$ ls -tlr $ORACLE_HOME/bin/oracle -rwsr-s--x 1 grid oinstall 372684232 Mar 4 17:00 /oracle/gi/bin/oracle
处理方法:
asm_home的用户下:
$ cd <asm_home>/bin $ ./setasmgidwrap o=/u01/app/oracle/product/12.2.0/db_1/bin/oracle
参考文档:
Database Will Not Mount: ORA-15025, ORA-27041, 'Permission denied', ORA-15081 (Doc ID 1378747.1)
chmod u+s $GRID_HOME/bin/oracle chmod g+s $GRID_HOME/bin/oracle
启动数据库
