ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务【解决思路】

在使用PL/SQL连接Oracle数据库时,出现了错误:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务。此时,首先需要检查E:\app\toryci\product\11.2.0\dbhome_1\NETWORK\ADMIN路径下(每个人的电脑路径不一样,可参考)的listener.ora、tnsnames.ora配置文件内容,主要是检查HOST配置是否为安装Oracle服务的机器,例如:

1.listener.ora文件

listener.ora是服务器端用的,oracle监听程序,就是读的这个文件,里面有oracle服务器端的socket监听地址和端口(
如果要想局域网中的其他人,能够访问我本地的oracle,要把我本机的地址写进去,如x.x.x.x:

LISTENER =
    (DESCRIPTION_LIST =
        (DESCRIPTION =
            (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
            (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
            (ADDRESS = (PROTOCOL = TCP)(HOST = x.x.x.x)(PORT = 1521))
        )
    )

2.tnsnames.ora文件

tnsnames.ora是记录客户端访问数据库的本地配置:
客户端是通过tnsnames.ora来识别连接服务器的
如果你没有添加tnsnames.ora,那么你就连接不上服务器的。
文件地址:E:\app\toryci\product\11.2.0\dbhome_1\NETWORK\ADMIN(每个人的电脑路径不一样,可参考

3.通过Net Manager查看服务命配置:

ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务【解决思路】_第1张图片

4.检查以下环境变量配置:

ORACLE_HOME:E:\app\toryci\product\11.2.0\dbhome_1

TNS_ADMIN:E:\app\toryci\product\11.2.0\dbhome_1\NETWORK\ADMIN

path属性值新增:E:\app\toryci\product\11.2.0\dbhome_1\BIN

NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK【PL/SQL中文字符识别配置,此处可不用管

5.重启监听器,再重启Oracle数据库,最后再用PL/SQL连接Oracle数据库。

 

你可能感兴趣的:(Oracle)