今天在一个数据库服务器上生成pfile时报错:
SQL> alter system set db_cache_size=1200m scope=spfile;
System altered.
SQL> create pfile from spfile;
create pfile from spfile
*
ERROR at line 1:
ORA-07391: sftopn: fopen error, unable to open text file.
--查看数据库是以spfile启动的
SQL> show parameter pfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string ?/dbs/spfile@.ora
--在网上查了一下ora-07319:
Error: ORA 7391
Text: sftopn: fopen error, unable to open text file.
-------------------------------------------------------------------------------
Cause: Fopen library routine returned an error.
Action: Verify existence and permissions.
--回到OS上检查文件的属主和权限:
[oracle@fujkf2 dbs]$ ls -l
total 76
-rw-r--r-- 1 oracle oinstall 12920 Mar 8 2002 initdw.ora
-rw-r--r-- 1 root root 8385 May 23 17:30 initfujora.ora
-rw-r--r-- 1 oracle oinstall 8385 Mar 9 2002 init.ora
-rw-rw---- 1 oracle oinstall 24 May 24 13:57 lkFUJORA
-rwSr----- 1 oracle oinstall 1536 May 25 10:40 orapwfujora
-rw-rw---- 1 oracle oinstall 2560 May 24 13:57 spfilefujora.ora
--果然,init.ora的权限有问题,这个库是其他同事安装的,可能是安装的时候从别处拷了一个参数文件过来,导致这个问题。
--解决就很简单了,原来的init.ora文件没有什么用,直接用root删除了就可以。
[root@fujkf2 dbs]# rm initfujora.ora
rm: remove regular file `initfujora.ora'? y
SQL> create pfile from spfile;
File created.
在LINUX/UNIX下要特别注意权限问题。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/231499/viewspace-63807/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/231499/viewspace-63807/