今天在启动服务器上的ORACLE时遇到如下错误:
  SQL> startup;
  ORA-00119: invalid specification for system parameter LOCAL_LISTENER
  ORA-00132: syntax error or unresolved network name ’LISTENER_ORCL’
  然后,在网上找了一些资料,解决了此问题。
  解决的方式如下(这是网上的一位达人解决方案,我照他的步骤顺利解决,不过决定还是做一个笔记):
  第一步:复制一份pfile参数文件(注意:oracle中的pfile指的就是init<sid>.ora文件)
  $ ./sqlplus / as sysdba;
  SQL> create pfile from spfile=’/u01/oracle/product/10.2.0/db_1/dbs/spfileorcl.ora’;
  第二步:修改pfile参数文件(也即修改init<sid>.ora文件)
  经过第一步以后,你就会在$ORACLE_HOME/dbs目录下发现有这么一个文件init<sid>.ora,这就是你第一步创建的文件。由于我的oracle实例名为orcl,所以我的pfile文件为initorcl.ora。
  用gedit打开,找到local_listener这一行,然后将其值修改为:
  (ADDRESS_LIST=(Address=(Protocol=tcp) (Host=your_hostname)(Port=1521)))
  其中的your_hostname为你的主机名,其实导致ORA-00119和ORA-00132错误的原因就很可能是你修改了你的hostname,但是我看了一下我的tnsname.ora文件里面的那个LISTENER_ORCL(可能你不是这个名字)和后面修改的your_hostname一致,我做的只是将tnsname.ora文件中的(ADDRESS_LIST=(Address=(Protocol=tcp) (Host=your_hostname)(Port=1521)))复制到pfile文件的“local_listener=”后面,然后就顺利启动了数据库,我也不知道为什么直接用*.local_listener=’LISTENER_ORCL’就找不到,而一定要*.local_listener=’(ADDRESS_LIST=(Address=(Protocol=tcp) (Host=your_hostname)(Port=1521)))’才可以,这个问题以后研究一下。
  以下是我的一个修改样例:
  修改之前可能是这样
  *.local_listener=’LISTENER_ORCL’
  修改后的值大概就是这个样子了
  *.local_listener=’(ADDRESS_LIST=(Address=(Protocol=tcp) (Host=your_hostname)(Port=1521)))’
  然后保存退出
  第三步:以pfile创建spfile
  使用以下命令创建spfile
  SQL> create spfile from pfile=’/u01/oracle/product/10.2.0/db_1/dbs/initorcl.ora’;
  第四步:启动数据库
  SQL> startup;
  ORACLE instance started.
  Total System Global Area *** bytes
  Fixed Size *** bytes
  Variable Size *** bytes
  Database Buffers *** bytes
  Redo Buffers *** bytes
  Database mounted.
  Database opened.

***********************************
在oracle92上创建了一个测试数据库,忘记了创建spfile(9208默认仍然是pfile启动数据库的),同时修改了监听器的名字什么的,然后过了几天重启数据库的时候,发现数据库启动的时候报错

ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name ’LISTENER_ORCL’

检查的时候,发现确实没有spfile,之前修改监听器什么的都只是在内存里面修改了,没保存到pfile文件里去

问题原因:数据库在启动的时候会尝试解析tnsnames.ora里的listener名字,看是否存在该listener,如果不存在则提示错误。

解决方式:
1. 如果有pfile,则用pfile启动数据库;如果不存在pfile,但有之前的spfile,那么可以通过create pfile from spfile='/home/..../spfileXXXX.ora'来生成pfile,并可手动编辑pfile文件
startup pfile='/home/.../initorcl.ora'

2. 检查spfile的值,并创建spfile
SQL> show parameter spfile

NAME TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
spfile string
SQL> create spfile from pfile='/home/ora92/admin/orcl/pfile/initorcl.ora.515200911423'
2 ;

File created.

SQL> show parameter spfile

NAME TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
spfile string

SQL> startup force
ORACLE instance started.

Total System Global Area 2837416920 bytes
Fixed Size 744408 bytes
Variable Size 687865856 bytes
Database Buffers 2147483648 bytes
Redo Buffers 1323008 bytes
Database mounted.
Database opened.
SQL> show parameter spfile

NAME TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
spfile string
?/dbs/spfile@.ora

3. 检查local_listener的值,并设置成需要的值
SQL> show parameter listener

NAME TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
local_listener string

mts_listener_address string

mts_multiple_listeners boolean
FALSE
remote_listener string
SQL> alter system set local_listener=' (ADDRESS = (PROTOCOL = TCP)(HOST = mddbstandby.163.com)(PORT = 9521))' scope=both;

System altered.

SQL> startup force
ORACLE instance started.

Total System Global Area 2837416920 bytes
Fixed Size 744408 bytes
Variable Size 687865856 bytes
Database Buffers 2147483648 bytes
Redo Buffers 1323008 bytes
Database mounted.
Database opened.
SQL> show parameter local_listener

NAME TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
local_listener string
(ADDRESS = (PROTOCOL = TCP)(H
OST = mddbstandby.163.com)(POR
T = 9521))
SQL>

ORA-00119/ORA-00132的更多相关文章

  1. listener.ora/sqlnet.ora/tnsnames.ora配置文件详解

    oracle网络配置 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下. 英文说明: The ...

  2. oracle的listener.ora sqlnet.ora tnsnames.ora三个文件的关联性

    学习:http://www.cnblogs.com/william-lee/archive/2010/10/20/1856261.html 之前因为安装的是windows server 2008 r2 ...

  3. ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)

    不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...

  4. oracle的sqlnet.ora,tnsnames.ora,listener.ora三个配置文件

    总结: 1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下. 2 .sqlnet.ora确定解析方式 3 .listener.ora上设SID_NAME,通常用于JD ...

  5. oracle的sqlnet.ora , tnsnames.ora , Listener.ora 文件的作用(转)

    oracle网络配置三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下.1. sqlnet.o ...

  6. oracle错误(ORA:12154 ORA:01034 和 ORA:27101 ORA-18008 ORA-01081)

    按照正常操作流程,启动项目,发现项目报错,原因是连接不上oracle数据库, PLSQL连接时报错,错误码  ORA:12154 无法解析指定的连接标识符 第一次,遇到这个错误,在网上找了资料都是需要 ...

  7. ORACLE RAC 监听配置 (listener.ora tnsnames.ora)

    Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的.在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务 ...

  8. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

  9. tnsnames.ora配置注意(连接新的数据库)

    文件地址D:\app\think\product\11.2.0\instantclient_11_2\network\admin\tnsnames.ora# tnsnames.ora Network ...

  10. tnsnames.ora 监听配置文件详解

    今天是重要的一天.将XML数据导入ORACLE遇到很多问题,学了好多,其中很长时间花在网络配置上,刚开始学,具体原因不知道,先把搜集到的好文章存下来,以后慢慢研究. 监听配置文件            ...

随机推荐

  1. SharePoint 2013 安装

    步骤 1:打开提升的 SharePoint 2013 命令行管理程序 选择与您的服务器操作系统对应的过程. 在 Windows Server 2008 R2 中 单击“开始”>“所有程序”> ...

  2. VB6之GIF分解

    原文链接:http://hi.baidu.com/coo_boi/item/1264a64172fe8dec1f19bc08 还是找了个C++的翻译下,原文链接:http://www.360doc.c ...

  3. 水题 第三站 HDU Largest prime factor

    先写一遍思路,跟素数表很类似吧. 1)从小到大遍历数据范围内的所有数.把包含质因子的数的位置都设成跟质因子的位置相同. 2)同一个数的位置可能被多次复写.但是由于是从小到大遍历,这就保证了最后一次写入 ...

  4. 使用Web页面配置ESP8266的参数

    前言 使用Web页面配置ESP8266的参数相对于使用串口AT指令配置更加直观和简单.与配置路由器方式类似. 基本思路 基本思路是ESP8266工作AP模式下,作为TCP Server监听TCP Cl ...

  5. 利用Python实现一个感知机学习算法

    本文主要参考英文教材Python Machine Learning第二章.pdf文档下载链接: https://pan.baidu.com/s/1nuS07Qp 密码: gcb9. 本文主要内容包括利 ...

  6. DOM事件代码小结

    以下代码出自<DOM Enlightenment>一书1.三种事件形式 <body onclick="alert('触发内联属性事件')"> <div ...

  7. 微信小程序探索(一)

    一.小程序到底是个什么鬼? 现在Android系统越用越卡的现状很头疼,手机上再也不想装太多的App,而市面上层出不穷的各种应用,有时又是我们需要用到的,怎么办呢!!微信小程序就是一种不需要下载安装即 ...

  8. 让 Python 带你进入开源的世界——Git 从入门到与他人协作开发

    让 Python 带你进入开源的世界--Git 从入门到与他人协作开发 我认为开源社区中有很多优秀的资源,并且可以帮助进阶中的程序员提高编程能力和水平.所以,我发起了<HelloGitHub&g ...

  9. node 控制 树莓派做的天气闹钟

    node 控制 树莓派做的天气闹钟 在成都上班,下雨天堵车,迟到的概率会很大. 正好手上有一块树莓派 ,做了一个晴雨闹钟. 下雨天 早上 7:00叫我起床 晴天 早上 7:30叫我起床 将自己喜欢的歌 ...

  10. Java网络连接之HttpURLConnection、HttpsURLConnection

    工具类包含两个方法: http请求.https请求 直接看代码: package com.jtools; import java.io.BufferedReader; import java.io.I ...