① PLsql连接oracle数据库 ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务解决
你的服务里面同名的服务太多了,把重名的删掉试试。有一个服务就可版以了,不用再额外权的编写1,2的。多了就会把计算机搞糊涂了,它不知道该选择哪个服务工作了。操作计算机,咱们必须清楚地告诉计算机要执行的指令才行!!!!!
如图:
② plsql连接时提示监听程序当前无法识别连接描述符中请求的服务
我刚好在测试也是这样子,是tnsnames.ora文件
当在Oracle客户端中配置好Net Manager中配置好服务后就可以通过我们配置的网络服务名访问Oracle数据库了,此配置实质想D:\Oracle\proct\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora中增加了一行配置(由于我的Oracle是安装在D盘Oracle目录中,具体路径根据安装时选择的路径而定)。
# tnsnames.oraNetwork Configuration File:d:\Oracle\proct\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora
# Generated byOracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ORCL)
)
)
另外,程序不能放在有括号的目录下,应该是上面这类配置文件中都是括号的原因吧
③ plsql连接数据库时提示监听程序怎么解决
方法一:
在oracle_home下找来到lsnrctl.exe 输入 start
方法二源
可能认不到实例名
在cmd下运行
set oracle_sid=自己数据库的实例名(大多数orcl)
网上还有很多解决办法
也许不见得管用,这种问题具体问题具体分析比较好。介绍的这2种您的机器还不行。就去修改一个TNSNAMES.ORA。
④ plsql 登录时报ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
这个是Oracle服务器的问题,需要在服务器上弄。
引起这个问题有很多种原因:
1. 监听服务没有启动,在服务器上启动此服务即可。
2. 服务器的 ip 被修改了,但是监听里面的配置没有相应改过来。 这时可以把服务器改回原来的ip , 又或者修改配置listener.ora文件
3. 系统没有正常关机,Oracle的数据文件损坏了。这个修复起来比较麻烦的,只能让有经验的dba来搞了。网上也有一些修复的教程,但是也视乎情况而定,不一定有效。
⑤ Oracle Pl sql 登录时提示 “监听程序当前无法识别连接描述符中请求的服务” 。
[oracle@prod ~]$ oerr ora 28547
28547, 0000, "connection to server failed, probable Oracle Net admin error"
// *Cause: A failure occurred ring initialization of a network connection
// from a client process to the Oracle server. The connection
// was completed but a disconnect occurred while trying to
// perform protocol-specific initialization, usually e to
// use of different network protocols by opposite sides
// of the connection. This usually is caused by incorrect
// Oracle Net administrative setup for database links or external
// procere calls. The most frequent specific causes are:
// -- The connection uses a connect string which refers
// to a Heterogeneous Services agent instead of
// an Oracle server.
// -- The connection uses a connect string which includes
// an (HS=) specification.
// -- Hitting Ctrl+C before connection initialization is
// complete.
// -- Using DRCP on Windows with SQLNET.AUTHENTICATION_SERVICES
// set to NTS.
// -- Connection timeout e to SQLNET.INBOUND_CONNECT_TIMEOUT
// parameter when all shared servers are busy in
// shared server configuration.
// *Action: Check Oracle Net administration in the following ways:
// -- When using TNSNAMES.ORA or an Oracle Names server, make sure
// that the client connection to the Oracle server uses
// the correct service name or SID.
// -- Check LISTENER.ORA on the connection end point's host machine
// to assure that this service name or SID refers
// to the correct server.
// -- Confirm in TNSNAMES.ORA or the equivalent service definition
// that the connect string does not contain (HS=).
// -- Set SQLNET.AUTHENTICATION_SERVICES to NONE when using DRCP
// on Windows.
//
首先保证你的数据库已经启动了。
然后启动plsql developer
如图,你按照这种直接连接的方式填写database那一栏试一下,格式如下:
ip:端口号/sid
例如上图,
192.168.100.167是oracle服务器的ip地址
1521是监听器的端口号
orcl是oracle数据库的sid
如果这样可以连接,拿就是你的tnsnames.ora文件配置的问题了。
⑥ plsql连接oracle数据库时提示无监听程序
要判断出哪里出问题,
先是保证虚拟机的安装正常,端口可以访问,
然后就是判断监听程序是否正常,就是在虚拟机里面先试一下是否能够连接。
再针对相应问题解决。