Database Oracle TNS问题?
我有个错误?我的pl/Sql开发人员说我的oracle数据库找不到服务描述符,但是当我检查侦听器时,我得到了这个错误Database Oracle TNS问题?,database,oracle,listener,Database,Oracle,Listener,我有个错误?我的pl/Sql开发人员说我的oracle数据库找不到服务描述符,但是当我检查侦听器时,我得到了这个错误 LSNRCTL> start Starting tnslsnr: please wait... Service OracleOraDb10g_home1TNSListener already running. TNS-12560: TNS:protocol adapter error TNS-00530: Protocol adapter error LSNRCT
LSNRCTL> start
Starting tnslsnr: please wait...
Service OracleOraDb10g_home1TNSListener already running.
TNS-12560: TNS:protocol adapter error
TNS-00530: Protocol adapter error
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
32-bit Windows Error: 61: Unknown error
我的listener.ora的内容是
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = Oracle10g)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = ORCL)
)
)
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
及
tnsnames.ora的内容如下
# tnsnames.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
VMOBILE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
VMOBILEMASTER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ORCL)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = ORCL)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
请告诉我今晚的最后期限。请帮助。这可能是一个配置问题,这意味着我们很难远程解决。你需要检查的两件事是
LISTENER.ORA
文件中的条目与TNSNAMES.ORA
文件匹配hosts
文件中的信息是正确的C:\WINDOWS\system32\drivers\etc
显然,这取决于环境的设置方式(不同的驱动器号或其他)
编辑
您需要侦听器文件中的
GLOBAL\u DBNAME
来匹配tnsnsames文件中的SERVICE\u NAME
,即ORCL错误可能在listener.ora
文件中。尝试用侦听器正在运行的服务器的名称或ip号替换读取的(地址=(协议=TCP)(主机=本地主机)(端口=1521))
行中的localhost
。我会用ipconfig告诉您的是您正在使用的ip地址的任何内容替换localhost。不幸的是,这种错误可能发生在各种情况下
今天,我通过从cmd.exe运行LSNRCTL start,以“管理员身份”启动,解决了此错误消息 我在listener.ora和tnsnames.ora中有“localhost”服务器。另外,我在sql.ini中有SQLNET.AUTHENTICATION\u SERVICES=(无)
在尝试使用LSNRCTL.EXE之前,我在windows服务列表中没有侦听器服务。管理员命令中的LSNRCTL start命令可以为我使用。我已经尝试了主机文件,并且设置正确。你能帮我查看一下我在上面发布的TNSname.ora文件和LISTENER.ora文件吗?我试过你的建议,但仍然有同样的错误。LSNRCTL>开始启动tnslsnr:请稍候。。。服务OracleOraDb10g_Home1TransListener已在运行。TNS-12560:TNS:protocol adapter error TNS-00530:protocol adapter error如果执行
lsnrctl重新加载
请也发布SQLNET.ORA文件。这可能是问题的一部分。当这个文件配置不正确时,我看到了这个错误。