Oracle数据库一直运行正常,过了几天连接就连接不上了。
检查了一下Oracle服务看到下面这个服务停止运行,启动后提示如下错误:
提示“OracleOraDb11g_home1TNSListener服务启动后停止,某些服务在未由其它服务或程序使用时将自动停止”,解决方法如下:
1. 注册表中
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\OracleOraDb11g_home1TNSListener中的ImagePath改为:
D:\oracle_11g\product\11.1.0\db_1\BIN\TNSLSNR.EXE(之前后面的.EXE没有)
2.环境变量
ORACLE_HOME改为:D:\oracle_11g\product\11.1.0\db_1(之前为空)
3.如果前面两项设置完后,还连接不上,配置监听文件
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\Oracle10g)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = E:\Oracle10g)
(SID_NAME = ORCL)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = onest)(PORT = 1521))
)
)