1. 程式人生 > >oracle數據庫升級dbua操作阻塞解決方法(解決ORA-32004報錯)

oracle數據庫升級dbua操作阻塞解決方法(解決ORA-32004報錯)

ram values a10 side 問題分析 tail script 說明 imm

操作環境

1、SuSE11sp3操作系統

2、oracle 11.2.0.3版本升級到11.2.0.4版本

問題現象

oracle 11.2.0.3版本升級到11.2.0.4版本時執行dbua命令在獲取dabase信息步驟時提示輸入pfile文件,無法next操作,升級阻塞。(不是在自己環境操作,暫無截圖)

問題分析

oracle start mount步驟時會出現提示ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance錯誤,按照之前的理解是不會影響oracle的使用,但是不確定這個問題是否是阻塞的原因。查看alert*.log看看啟動時是否有報錯。

1、登錄oracle用戶,利用find $ORACLE_BASE -name "alert*.log" 查找alert log日誌。清空該日誌文件或者使用tail -f alert*.log

2、重啟oracle實例(shutdown immedate;start mount)

3、通過alert log日誌看到有如下提示信息:

Deprecated system parameters with specified values:

  remote_os_authent       

End of deprecated system parameter listing

4、根據提示不贊成該參數值有默認值,利用show parameter remote_os_authent查看確實存在默認值為TRUE

5、利用如下SQL查看確實為過期參數,下一步就是要把這個參數去掉。

SQL> column name format a10; 
SQL> column value format a10; 
SQL> column isdefault format a10; 
SQL> column descriptio format a10; 
SQL>SELECT NAME,Value,isdefault,Description FROM v$parameter WHERE isdeprecated = TRUE And Name=remote_os_authent; 

6、查看參數文件時spfile,不能直接修改,先生成品file文件

(1) 查看參數文件類型,有值表示使用的是spfile

SQL>show parameter spfile

(2)生成pfile文件。說明:/home/oracle是ORACLE用戶家目錄。可任意指定oracle可訪問的路徑。

create pfile=/home/oracle/pfile.ora from spfile;

(3)打開pfile.ora文件,刪除remote_os_authent參數所在行

(4)重啟ORACLE實例,利用pfile.ora文件打開,重新生成spfile文件後再重啟一下ORACLE使spfile文件生效(說明:由於這裏在升級操作,只能啟動到mount狀態,startup mount)。

SQL> shutdown immedate;
SQL> startup mount pfile=/home/oracle/pfile.ora;
SQL> create spfile from  pfile=/home/oracle/pfile.ora;

(5)重新執行dbua命令開始操作升級,問題解決,升級成功。

問題解決

參考問題分析步驟,實際上應該是ORA-32004提示會影響dbua操作,目標是解決這個ORA-32004提示即可。

其他

ORA-32004信息參考如下,給出了明確的操作方法,查看alert log,從spfile或者pfile文件刪掉過期參數。

32004, 00000, "obsolete or deprecated parameter(s) specified for %s instance" 
// *Cause: Obsolete or deprecated parameters for this instance type 
// were specified in the SPFILE or the PFILE on the server side. 
// *Action: See alert log for a list of parameters that are obsolete 
// or deprecated. Remove them from the SPFILE or the server 
// side PFILE. 

oracle數據庫升級dbua操作阻塞解決方法(解決ORA-32004報錯)