Недавно столкнулся с проблемой во время классического обновления БД, с помощью давно проверенного в деле скрипта.
В этот раз проблема возникла при ресторе контрольника из бекапа, а точнее, как показали логи, при попытке поднять таргет(клонируемую), базу после удаления, в режиме NOMOUNT:
SQL> startup nomount;
ORA-00488: RBAL process terminated with error
Никаких изменений с базой и ASM не производилось, по крайней мере с моей стороны.
В алерт логе фигурировала следующая информация:
Fatal NI connect error 12547, connecting to:
(DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/u01/app/12.1.0.2/grid/bin/oracle)(ARGV0=oracle+ASM3_asmb_database3)(ENVS='ORACLE_HOME=/u01/app/12.1.0.2/grid,ORACLE_SID=+ASM3')(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(enable=setuser)(CONNECT_DATA=(CID=(PROGRAM=oracle)(HOST=node03.database.ru)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 12.1.0.2.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 12.1.0.2.0 - Production
Time: 29-JUN-2019 01:02:07
Tracing not turned on.
Tns error struct:
ns main err code: 12547
TNS-12547: TNS:lost contact
ns secondary err code: 12560
nt main err code: 517
TNS-00517: Lost contact
nt secondary err code: 32
nt OS err code: 0
Sat Jun 29 00:14:16 2019
WARNING: failed to start ASMB (connection failed) state=0x1 sid='+ASM3'
Sat Jun 29 00:14:16 2019
Errors in file /u01/app/oracle/diag/rdbms/database/DATABASE/trace/DATABASE_asmb_26515.trc:
ORA-12547: TNS:lost contact
Stopping background process RBAL
High Throughput Write functionality enabled
WARNING: ASMB exiting with error
В трейсах не было ничего более информативного, да и что еще собственно нужно. Ошибка прямо говорит, что проблема между соединением базового инстанса и ASM.
Поскольку, никаких изменений не было произведено, я решил, что это какой-то глюк или тому подобное, пробовал решить проблему в лоб и все рестартовал (сервисы, а затем и сам сервер), но тщетно.
Лишь через некоторое время я вспомнил о том, что уже сталкивался с данной проблемой некоторое время назад, когда проводил миграцию существующиз баз в организации на ASM.
В результате помогло следующее:
>>> grid@node03.database.com
cd $GRID_HOME/bin
chmod 6751 oracle
>>> oracle@node03.database.com
cd $RDBMS_HOME/bin
chmod 6751 oracle
OR
>>> grid@node03.database.com
cd $GRID_HOME/bin
./setasmgidwrap o=/u01/app/oracle/product/12.1.0.2/db/bin/oracle => (!!!) Внимательно – это RDBMS_HOME
Источники:
Doc ID 1336846.1
Doc ID 2332879.1