rac启动失败ORA01565 ORA17503 ORA15173

2024年 4月 12日 82.1k 0

环境说明:

11.2.0.4 RAC 环境
Centos 7.6系统
虚拟机(磁盘模式独立-持久)

报错说明:

机房断电导致物理机全部down机。当启动服务器后发现asm可正常启动,但是db为运行,于是手动该命令启动后报错,重点观察错误已标红

PRCR-1079 : Failed to start resource ora.fls.db
CRS-5017: The resource action "ora.fls.db start" encountered the following error:
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+racdata/FLS/PARAMETERFILE/spfile.259.1143572893'
ORA-17503: ksfdopn:10 Failed to open file +racdata/FLS/PARAMETERFILE/spfile.259.1143572893
ORA-15056: additional error message
ORA-15173: entry 'parameterfile' does not exist in directory 'fls'
ORA-06512: at line 4
. For details refer to "(:CLSN00107:)" in "/oracle/app/11.2.0/grid/log/tfls1/agent/crsd/oraagent_oracle//oraagent_oracle.log".

CRS-5017: The resource action "ora.fls.db start" encountered the following error:
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+racdata/FLS/PARAMETERFILE/spfile.259.1143572893'
ORA-17503: ksfdopn:10 Failed to open file +racdata/FLS/PARAMETERFILE/spfile.259.1143572893
ORA-15056: additional error message
ORA-15173: entry 'parameterfile' does not exist in directory 'fls'
ORA-06512: at line 4
. For details refer to "(:CLSN00107:)" in "/oracle/app/11.2.0/grid/log/tfls2/agent/crsd/oraagent_oracle//oraagent_oracle.log".

CRS-2674: Start of 'ora.fls.db' on 'tfls1' failed
CRS-2674: Start of 'ora.fls.db' on 'tfls2' failed
CRS-2632: There are no more servers to try to place resource 'ora.fls.db' on that would satisfy its placement policy

注:标红提示说该参数文件不在fls目录中存在,于是进入asmcmd中查看,过真spfile不存在

查看asm磁盘中文件

ASMCMD> pwd
+racdata/fls
ASMCMD> ls
ARCH1/
ARCHIVELOG/
CONTROLFILE/
DATAFILE/
ONLINELOG/
TEMPFILE/
spfilefls.ora
此时发现没有报错中的+racdata/FLS/PARAMETERFILE/spfile.259.1143572893这个文件,spfilefls.ora只是在+oradata/fls/spfilefls.ora中,说明spfile目录问题导致,需要手动

说明:实际上在RAC环境中,我们更多时候是用srvctl来管理RAC资源,而srvctl的信息来自ocr,包括spfile的位置信息。我们刚才那样做虽然修改了参数文件的位置,但是ocr并不知道,它还用原来的文件启动数据库。

此时用命令查看,发现spfile文件路径确实没有
[grid@tfls1:/oracle/app/11.2.0/grid/log/tfls1]$srvctl config database -d fls -a
Database unique name: fls
Database name:
Oracle home: /oracle/app/oracle/product/12.2/db_1
Oracle user: oracle
Spfile: +racdata/FLS/PARAMETERFILE/spfile.259.1143572893
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: fls
Database instances: fls1,fls2
Disk Groups: RACDATA,RACFRA
Mount point paths:
Services:
Type: RAC
Database is enabled
Database is administrator managed

更新ocr中spfile路径

PRCD-1163 : Failed to modify database fls
PRCR-1071 : Failed to register or update resource ora.fls.db
CRS-0245: User doesn''t have enough privilege to perform the operation

发现用grid更新竟然报错,没有足够的权限,果断用oracle尝试下
[oracle@tfls1:/home/oracle]$srvctl modify database -d fls -p +racdata/fls/spfilefls.ora
果然没有问题

启动数据库

[oracle@tfls1:/home/oracle]$srvctl modify database -d fls -p +racdata/fls/spfilefls.ora

[grid@tfls1:/home/grid]$crsctl stat res -t
查看都正常,并查看日志没有问题

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论