--******************************
-- ORA-00119 , ORA-00132 错误处 理
--******************************
最近系 统启动时 ,收到了 ORA- 00119 以及 ORA- 00132 的 错误 , 该错误实际 上跟 LISTENER有 关 ,通常的 处 理 办 法是 将 spfile 转储为 pfile 然后 从 pfile 启动
并 生成新的 spfile , 不 过该 操作方式代价太高,需要重新 启动数 据 库 。另一 种 方式 则 是直接修改 tnsnames.ora 中的服 务 名,使之 与监 听器 中的 listener 名字保持一致,具体 参 考下面的 细节 。
一 . 错误 提示
SQL > startup nomount;
ORA - 00119 : invalid specification for system parameter LOCAL_LISTENER
ORA - 00132 : syntax error or unresolved network name 'LISTENER_ODBP'
二、分析 错误
1 . 查 看 错误号对应 的具体描述
[oracle@odbp admin ]$ oerr ora 00132
00132 , 00000 , "syntax error or unresolved network name '%s'"
// *Cause: Listener address has syntax error or cannot be resolved.
// *Action: If a network name is specified, check that it corresponds
// to an entry in TNSNAMES.ORA or other address repository
// as configured for your system. Make sure that the entry
// is syntactically correct.
描述信息中 给 出了 listener.ora 中 网络 名是否 与 tnsnames.ora 相一致,需要 检查
2 . 查 看 监 听
[oracle@odbp admin ]$ more listener.ora
# listener.ora Network Configuration File : /u01/app/oracle/ 10 g/ network / admin /listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER_ODBP =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = odbp.oradb.com)
(ORACLE_HOME = /u01/app/oracle/ 10 g)
(SID_NAME = odbp)
)
)
LISTENER_ODBP =
( DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = odbp.oradb.com)(PORT = 1521 ))
)
3 . 查 看 tnsnames.ora
[oracle@odbp admin ]$ more tnsnames.ora
# tnsnames.ora Network Configuration File : /u01/app/oracle/ 10 g/ network / admin /tnsnames.ora
# Generated by Oracle configuration tools.
ODBP =
( DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168 .192.11)(PORT = 1521 ))
)
(CONNECT_DATA =
(SERVICE_NAME = odbp.oradb.com)
)
)
EXTPROC_CONNECTION_DATA =
( DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)( KEY = EXTPROC0))
)
(CONNECT_DATA =
( SID = PLSExtProc)
(PRESENTATION = RO)
)
)
由上面的 listener.ora 与 tnsnames.ora 可知
listener.ora 中的 监 听名 与 tnsnames.ora 中的服 务 名不一致
三、解 决 方法
1 . 修改 tnsnames.ora 中的服 务 名 为 LISTENER_ODBP ,然后重新 启动数 据 库 即可
2 . 可以 将 spfile( 无 pfile 情 况 下 ) 转储为 pfile 文件, 将 local_listener 参数 置空,然后使用 pfile 文件 启动数 据 库 后重新生成 spfile
可以采用下面的方法 来转储 ,如下
[oracle@odbp dbs]$ ls -- 没 有 pfile
hc_odbp.dat initdw.ora init.ora lkODBP orapwodbp spfileodbp.ora
[oracle@odbp dbs]$ strings spfileodbp.ora > initodbp.ora
[oracle@odbp dbs]$ cat initodbp.ora
odbp.__db_cache_size= 130023424
odbp.__java_pool_size= 33554432
odbp.__large_pool_size= 4194304
odbp.__shared_pool_size= 113246208
odbp.__streams_pool_size= 0
*.audit_file_dest= '/u01/app/oracle/admin/odbp/adump'
*.background_dump_dest= '/u01/app/oracle/admin/odbp/bdump'
*.compatible= '10.2.0.4.0'
*.control_files= '/u01/app/oracle/oradata/odbp/control01.ctl' , '/u01/app/oracle/oradata/odbp/control02.ctl'
*.core_dump_dest= '/u01/app/oracle/admin/odbp/cdump'
*.db_block_size= 8192
*.db_domain= 'oradb.com'
*.db_file_multiblock_read_count= 16
*.db_name= 'odbp'
*.db_recovery_file_dest= '/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size= 2147483648
*.dispatchers= '(PROTOCOL=TCP) (SERVICE=odbpXDB)'
*.job_queue_processes= 10
*.local_listener= 'LISTENER_ODBP' -- 将 改行注 释 掉或置空
*.open_cursors= 300
*.pga_aggregate_target= 94371840
*.processes= 150
*.remote_login_passwordfile= 'EXCLUSIVE'
*.sga_target= 285212672
*.undo_management= 'AUTO'
*.undo_tablespace= 'UNDOTBS1'
*.user_dump_dest= '/u01/app/oracle/admin/odbp/udump'
SQL > startup nomount pfile = '/u01/app/oracle/10g/dbs/initodbp.ora' ;
ORACLE instance started.
Total System Global Area 285212672 bytes
Fixed Size 1267068 bytes
Variable Size 150997636 bytes
Database Buffers 130023424 bytes
Redo Buffers 2924544 bytes
SQL > create spfile from pfile ;
File created.
SQL > startup force ;
ORACLE instance started.
Total System Global Area 285212672 bytes
Fixed Size 1267068 bytes
Variable Size 150997636 bytes
Database Buffers 130023424 bytes
Redo Buffers 2924544 bytes
Database mounted.
Database opened.
四、更多 参 考
有关性能优化请参考
共享池的 调 整 与优 化(Shared pool Tuning)
Oracle 表 缓 存(caching table) 的使用
有关闪回特性请参考
Oracle 闪 回特性(FLASHBACK DATABASE)
Oracle 闪 回特性(FLASHBACK DROP & RECYCLEBIN)
Oracle 闪 回特性(Flashback Query 、Flashback Table)
Oracle 闪 回特性(Flashback Version 、Flashback Transaction)
有关基于用户管理的备份和备份恢复的概念请参考
Oracle 基于用 户 管理恢 复 的 处 理 ( 详细描述了介质恢复及其处理 )
有关 RMAN 的恢复与管理请参考
有关 Oracle 体系结构请参考
Oracle 实 例和Oracle 数 据 库 (Oracle 体系 结构 )
Oracle 联 机重做日志文件(ONLINE LOG FILE)