ITPub博客

首页 > 数据库 > Oracle > [20260908]关于spfile参数文件转换pfile文件的问题.txt

[20260908]关于spfile参数文件转换pfile文件的问题.txt

原创 Oracle 作者:lfree 时间:2026-09-21 21:10:17 0 删除 编辑

[20260908]关于spfile参数文件转换pfile文件的问题.txt

--//同事遇到spfile参数文件设置错误,需要建立pfile参数,快速启动数据库。实际上这类问题处理很简单,只不过有时候缺乏必要的
--//知识储备,遇到问题有点自乱阵脚。

--//我个人工作习惯,喜欢在做大的改动前做一个备份。
$ cp spfilebook.ora  spfilebook.ora.20260622

--//相当于保留多个备份,这样遇到问题改名就可以了。
--//通过例子说明问题:

1.首先确定spfile位置:
--//alert日志就有记录。
$ grep "Using parameter settings" alert_book.log | sort| uniq -c
      1 Using parameter settings in client-side pfile
      1 Using parameter settings in client-side pfile /u01/app/oracle/cfgtoollogs/dbca/book/initbookTempOMF.ora on machine centos9
      2 Using parameter settings in client-side pfile /u01/app/oracle/cfgtoollogs/dbca/book/initbookTemp.ora on machine centos9
    373 Using parameter settings in server-side spfile /u01/app/oracle/dbs/spfilebook.ora
--//确定spfilebook.ora文件位置。

2.方法1,建立相应initbook.ora文件:
$ type cdf
cdf is a function
cdf ()
{
    echo cd $(dirname $1);
    cd $(dirname $1)
}

$ cdf /u01/app/oracle/dbs/spfilebook.ora
cd /u01/app/oracle/dbs

--//如果知道那个参数错误,追加正确的参数就可以了,例子如下:
$ cat initbook.ora
SPFILE='/u01/app/oracle/dbs/spfilebook.ora'
use_large_pages=true

--//完成启动修改为正确的参数。

3.方法2,建立pfile:
--//pfile建立可以在nomount,mount状态下建立。关闭数据库以及监听,步骤略。

$ rlsql
SQL*Plus: Release 21.0.0.0.0 - Production on Tue Sep 8 16:40:49 2026
Version 21.3.0.0.0
Copyright (c) 1982, 2021, Oracle.  All rights reserved.
Connected to an idle instance.

SYS@book> create pfile='/tmp/@.ora' from spfile;
File created.
--//以上情况相当于缺省路径读取spfile文件,一些rac环境放在存储上,可以指定真实的路径,写成类似如下:

SYS@book> create pfile='/tmp/@.ora' from spfile='/u01/app/oracle/dbs/spfilebook.ora';
File created.

--//这样在/tmp目录下建立book.ora文件。
$ head -4 /tmp/book.ora ; tail -4 /tmp/book.ora
book.__data_transfer_cache_size=0
book.__db_cache_size=436207616
book.__inmemory_ext_roarea=0
book.__inmemory_ext_rwarea=0
*.undo_tablespace='UNDOTBS1'
*.unified_audit_common_systemlog='LOCAL2.INFO'
*.unified_audit_systemlog='LOCAL1.INFO'
*.use_large_pages='ONLY'

--//修改init文件后,再建立正确的参数spfile就可以了。

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

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7969275