有些時候調整配置的時候,啓動oracle後忘記生成spfile了,結果就給後面埋下坑。
碰到需要修改oracle的參數:
select count(*) from V$processl
select count(*) from v$session;
show parameter processes
show parameter sessions;
show parameter open_cursors
查詢沒有問題,但是設置的時候出問題了。
SQL> alter system set processes=100 scope=spfile;
alter system set processes=100 scope=spfile
*
ERROR at line 1:
ORA-32001: write to SPFILE requested but no SPFILE is in use
那好,我就創建一個spfile.
SQL>create spfile from pfile;
ERROR at line 1:
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file
'/u01/app/oracle/product/12.2.0/dbhome_1/dbs/initerp.ora'
問題在於以前是用pfile啓動的,而且文件夾中還有好幾個pfile的,不知到是用哪個版本的啓動的了。
SQL> show parameter pfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string
SQL>
SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string
SQL>
這些方法不行,不過後來還想到還有一個地方可以找,那就是alert 日誌。
/u01/app/oracle/diag/rdbms/ep/ep/trace/ep_alert.log
Release: 4.4.73-5-default
Version: #1 SMP Tue Jul 4 15:33:39 UTC 2017 (b7ce4e4)
Machine: x86_64
Using parameter settings in client-side pfile /u01/pfile.ora on machine suse12sp3
System parameters with non-default values:
終於在裏面找到了按個啓動的pfile: /u01/pfile.ora