|
Posted on
2010-07-09 11:18
linFen
阅读( 36790)
评论()
编辑
收藏
举报
- 检查监听器状态:
C:\>lsnrctl status LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 30-6月 -2009 21:08 :04 Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) TNS-12541: TNS:无监听器 TNS-12560: TNS: 协议适配器错误 TNS-00511: 无监听器 32-bit Windows Error: 2: No such file or directory 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=www-7f628f1510d)(PORT=1521) )) TNS-12541: TNS:无监听器 TNS-12560: TNS: 协议适配器错误 TNS-00511: 无监听器 32-bit Windows Error: 61: Unknown error
- 尝试登陆本地数据库:
C:\>sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 30 21:10:24 2009 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn scott/tiger@oradb ERROR: ORA-12541: TNS: 没有监听器 SQL> exit; --如果没有启动ORACLE服务的话,将出现下面的错误而不是上面: ERROR: ORA-12560: TNS: 协议适配器错误 C:\>sqlplus "/as sysdba" SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 30 21:14:17 2009 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. ERROR: ORA-12560: TNS: 协议适配器错误
- 启动监听器
C:\>lsnrctl start LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 30-6月 -2009 21:17 :21 Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. 启动tnslsnr:请稍候... TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production 系统参数文件为F:\oracle9i\network\admin\listener.ora 写入F:\oracle9i\network\log\listener.log的日志信息 监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc))) 监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=www-7f628f1510d)(PORT=1521))) 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) LISTENER 的 STATUS ------------------------ 别名 LISTENER 版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Produc tion 启动日期 30-6月 -2009 21:17:23 正常运行时间 0 天 0 小时 0 分 2 秒 跟踪级别 off 安全性 OFF SNMP OFF 监听器参数文件 F:\oracle9i\network\admin\listener.ora 监听器日志文件 F:\oracle9i\network\log\listener.log 监听端点概要... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=www-7f628f1510d)(PORT=1521))) 服务摘要.. 服务 "PLSExtProc" 包含 1 个例程。 例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序... 服务 "oradb" 包含 1 个例程。 例程 "oradb", 状态 UNKNOWN, 包含此服务的 1 个处理程序... 命令执行成功 注:如果启动监听器时报“错误3 找不到可执行文件的路径”。查看[控制面板]=[服务]=OracleOraHome92TNSListener的属性,发现“可执行文件的路径项”是空的。打开注册表编辑器,搜索监听服务对应的键值,终于在HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet(ControlSet001、 ControlSet002)/Services下找到了OracleOraHome92TNSListener服务。右击它选择“新建字符串值”,取名 ImagePath,并双击它在数值中输入监听程序的路径,此处为"F:/oracle/ora92/bin/TNSLSNR.EXE"。再执行就正常了。 原因:“超级兔子”和“windows优化大师”等系统维护软件会误删除注册表中的该项键值。 - 监听打开后试图连接到数据库
C:\>sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 30 21:23:45 2009 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn system/systemshx@oradb ERROR: ORA-12500: TNS: 监听程序无法启动专用服务器进程 原因:本地数据库对应的服务没有打开 SQL> exit - 打开本地数据库对应的服务
C:\>net start OracleServiceOradb OracleServiceORADB 服务正在启动 ........... OracleServiceORADB 服务已经启动成功。
- 再次试图连接数据库
C:\>sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 30 21:29:13 2009 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn system/systemshx@oradb as sysdba 已连接。 SQL> show user USER 为"SYS" SQL> conn system/systemshx@oradb 已连接。 SQL> show user USER 为"SYSTEM" SQL> select instance_name from v$instance;
INSTANCE_NAME ---------------- oradb
- 在Windows上,使用net命令能否启动数据库,还受到一个注册表参数的影响,这个参数是:ORA__AUTOSTART
对于我的Oracle9i数据库,这个键值位于HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1,我的数据库SID为oradb,这个参数就是:ORA_ORADB_AUTOSTART (Oracle10g数据库,这个键值位于HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_Ora10g) 当这个参数设置为True时,当我们启动服务时,Oracle数据库就会随之启动;反之,数据库就不会启动。 关闭oradb数据库服务 C:\>net stop oracleserviceoradb OracleServiceORADB 服务正在停止....... OracleServiceORADB 服务已成功停止。 测试1,ORA_ORADB_AUTOSTART=true时: C:\>net start oracleserviceoradb OracleServiceORADB 服务正在启动 ........... OracleServiceORADB 服务已经启动成功。
C:\>sqlplus "/as sysdba"
SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 30 21:47:01 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.1.0 - Production
SQL> select instance_name from v$instance;
INSTANCE_NAME ---------------- oradb
测试2,ORA_ORADB_AUTOSTART=FALSE时: C:\>net start oracleserviceoradb OracleServiceORADB服务正在启动 . OracleServiceORADB服务已经启动成功。
C:\>sqlplus "/ as sysdba" SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 6月 30 21:47:01 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
已连接到空闲例程。
- 启动Agent
C:\>agentctl start
DBSNMP for 32-bit Windows: Version 9.2.0.1.0 - Production on 30-6月 -2009 21:50: 38
Copyright (c) 2002 Oracle Corporation. All rights reserved.
正在启动 Oracle Intelligent Agent.... 代理已启动 注:如果Agent不能成功启动,则: 转到%oracle_home%\network\agent\下,删除所有后缀名为“.q”的文件。 如果还是不行,把services.ora也删除。
- 启动OracleOraHome92ManagementServer服务
C:\>oemctl start oms OracleOraHome92ManagementServer 服务正在启动 ............. OracleOraHome92ManagementServer 服务已经启动成功。
- 启动Oracle 界面管理器EMS
C:\>oemapp console
|
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律