1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > oracle中srv添加监听服务 Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述

oracle中srv添加监听服务 Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述

时间:2019-02-08 12:34:22

相关推荐

oracle中srv添加监听服务 Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述

Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务

解决过程:

1. 找到listener.ora监听文件,具体位置:D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora

2. 在lisener.ora文件中找到

(SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)

(PROGRAM = extproc)

(ENVS = "EXTPROC_DLLS=ONLY:D:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")

)

将下面的一段内容copy进去,并适当修改。(红字部分为你的SID,其中GLOBAL_DBNAME为全局数据库名,可以与SID不同)

(SID_DESC =

(GLOBAL_DBNAME = ORAC11)

(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)

(SID_NAME = ORAC11)

)

3. 保存listener.ora文件,关闭并重新启动监听程序。

lsnrctl stop // 关闭

lsnrctl start // 启动

4. 此时,用正常的用户去连接双出现新的错误。

ORA-27101: shared memory realm does not exist

5. 启动打开目录:D:\app\Administrator\admin\orac11\pfile,会发现里面有一个文件:init.ora.105103553,这是Oracle最后一次成功启动时备份的启动文件。

6. sqlplus /nolog,

create spfile from pfile='D:\app\Administrator\admin\orac11\pfile\init.ora.105103553'

startup // 启动数据库。

7. 一切恢复正常。

ora-12514的错误的原因有很多。但无外乎这几种:

1)、 ORA-12541: TNS: 没有监听器

显而易见,服务器端的监听器没有启动,另外检查客户端IP地址或端口填写是否正确。启动监听器:

$ lsnrctl start或

C:lsnrctl start

2)、 ORA-12154: TNS: 无法处理服务名

检查输入的服务名与配置的服务名是否一致。另外注意生成的本地服务名文件(Windows下如D:oracleora92networkadmin tnsnames.ora,Linux/Unix下/network/admin/tnsnames.ora)里每项服务的首 行服务名称前不能有空格。

3)、 ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SERVICE_NAME

打开Net Manager,选中服务名称,检查服务标识栏里的服务名输入是否正确。该服务名必须与服务器端监听器配置的全局数据库名一致。同时检查sqlnet.ora,例如如果想要采用简便连接方式连接就需要在NAMES.DIRECTORY_PATH参数中添加EZCONNECT。

4)、Ora-12514:TNS:监听程序当前无法识别链接描述符中请求的服务

该问题是由于缺少监听器的SID_LIST描述项引起的,采用netca进行配置的时候经常会遇到该问题,listener.ora示例如下

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = /opt/oracle/product/9.2.0.4)

(PROGRAM = extproc))

(SID_DESC =

(GLOBAL_DBNAME = )

(ORACLE_HOME = /opt/oracle/product/9.2.0.4)

(SID_NAME = SAMPLE)))LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521)))

// 解决办法

1.cmd 进入 sqlplus / as sysdba

2.增加 process 和session 重启服务

3.修改LISTENER.OAR 文件添加

(SID_DESC =

(GLOBAL_DBNAME = orcl)

(ORACLE_HOME = f:\app\MY\product\11.2.0\dbhome_1)

(SID_NAME = orcl)

)

4.修改tnsnames.ora

(CONNECT_DATA =

(SERVER = dedicate)

(SERVICE_NAME = orcl)

)

dedicate

oracle中srv添加监听服务 Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。