今天在启动数据库的过程中,收到以下错误:
SQL> startup ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance ORACLE instance started.
在主机环境下查看ORA-32004错误的原因和解决方案
[oracle@node2 ~]$ oerr ora 32004 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.
可见spfile中存在已被淘汰的或向前兼容的参数。
可通过告警日志来查看涉及的具体参数
打开告警日志
[oracle@node2 ~]$ view /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log
_optimizer_try_st_before_jppd= TRUE _px_partition_scan_enabled= TRUE _optimizer_false_filter_pred_pullup= TRUE _optimizer_enable_table_lookup_by_nl= TRUE _optimizer_outer_join_to_inner= TRUE _optimizer_full_outer_join_to_outer= TRUE _sqltune_category_parsed = "DEFAULT" diagnostic_dest = "/u01/app/oracle" Deprecated system parameters with specified values: background_dump_dest user_dump_dest End of deprecated system parameter listing
红色部分即为涉及的具体参数
查看官方文档对于该参数的说明,原来在11g中这两个参数即被DIAGNOSTIC_DEST所替代
Note: This parameter is ignored by the new diagnosability infrastructure introduced in Oracle Database 11g Release 1 (11.1), which places trace and core files in a location controlled by the DIAGNOSTIC_DEST initialization parameter.
返回数据库,查看background_dump_dest和user_dump_dest的值
SQL> show parameter background_dump_dest NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ background_dump_dest string /u01/app/oracle/diag/rdbms/orcl/orcl/trace
SQL> show parameter user_dump_dest NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ user_dump_dest string /u01/app/oracle/diag/rdbms/orcl/orcl/trace
SQL> show parameter DIAGNOSTIC_DEST NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ diagnostic_dest string /u01/app/oracle
将参数重置为系统默认值
SQL> alter system reset background_dump_dest; System altered. SQL> alter system reset user_dump_dest; System altered.
重启数据库,没有报上述ORA-32004错误。