windows下命令行下启动oracle服务

?检查监听器状态:
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.

已连接到空闲例程。
转自:http://www.cnblogs.com/luluping/archive/2010/07/09/1774243.html

?启动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

由于oracle服务占用资源比较多,所以平时没用的话,最好不用看,等需要的时候再开服务,已禁用的就不用管,把其他的调为手动,

把下面这几个代码放到记事本,文件命名为service.bat,注意要把文件类型的后缀显示出来

rem %1 is either start or stop
net %1 OracleServiceORCL
net %1 OracleOraDb10g_home1TNSListener
net %1 OracleOraDb10g_home1iSQL*Plus
rem net %1 OracleDBConsoleorcl

然后在命令提示符中到此文件的目录下,输入命令service start,就启动了服务

输入了service stop就停止了服务

一、独立启动:

Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-2000 Microsoft Corp.

#

检查监听器状态:

#

E:”>lsnrctl status

LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 28-6月 -2005 11:01:01

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oyez)(PORT=1521)))
TNS-12541: TNS:无监听器
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听器
32-bit Windows Error: 61: Unknown error
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
TNS-12541: TNS:无监听器
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听器
32-bit Windows Error: 2: No such file or directory

#

尝试登陆本地数据库:

#

E:”>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 28 11:01:09 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn system/qqqqqq@oradb as sysdba
ERROR:
ORA-12541: TNS: 没有监听器

--如果没有启动ORACLE服务的话,将出现下面的错误而不是上面:
ERROR:
ORA-12560: TNS: 协议适配器错误

#

原因:监听器没有启动,无法解析“oradb”服务名,所以无法登陆数据库。

#

SQL> exit

#

启动监听器

#

E:”>lsnrctl start

LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 28-6月 -2005 11:01:36

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

启动tnslsnr:请稍候…

TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
系统参数文件为F:”oracle”ora92”network”admin”listener.ora
写入F:”oracle”ora92”network”log”listener.log的日志信息
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oyez)(PORT=1521)))
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=”“.”pipe”EXTPROC0ipc)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oyez)(PORT=1521)))

LISTENER 的 STATUS

别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
启动日期 28-6月 -2005 11:01:38
正常运行时间 0 天 0 小时 0 分 2 秒
跟踪级别 off
安全性 OFF
SNMP OFF
监听器参数文件 F:”oracle”ora92”network”admin”listener.ora
监听器日志文件 F:”oracle”ora92”network”log”listener.log
监听端点概要…
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oyez)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=”“.”pipe”EXTPROC0ipc)))
服务摘要..
服务 “OEMREP” 包含 1 个例程。
例程 “OEMREP”, 状态 UNKNOWN, 包含此服务的 1 个处理程序…
服务 “PLSExtProc” 包含 1 个例程。
例程 “PLSExtProc”, 状态 UNKNOWN, 包含此服务的 1 个处理程序…
服务 “oradb.eleaf.org” 包含 1 个例程。
例程 “oradb”, 状态 UNKNOWN, 包含此服务的 1 个处理程序…
命令执行成功

#

如果启动监听器时报“错误3 找不到可执行文件的路径”。
查看[控制面板]=[服务]=OracleOraHome92TNSListener的属性,发现“可执行文件的路径项”是空的。打开注册表编辑器,搜索监听服务对应的键值,终于在HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet(ControlSet001、 ControlSet002)/Services下找到了OracleOraHome92TNSListener服务。右击它选择“新建字符串值”,取名 ImagePath,并双击它在数值中输入监听程序的路径,此处为”F:/oracle/ora92/bin/TNSLSNR.EXE”。再执行就正常了。

原因:“超级兔子”和“windows优化大师”等系统维护软件会误删除注册表中的该项键值。

#

E:”>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 28 11:05:27 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn system/qqqqqq@oradb as sysdba
ERROR:
ORA-12500: TNS: 监听程序无法启动专用服务器进程

#

原因:本地数据库对应的服务没有打开

#

SQL> exit

#

打开本地数据库对应的服务,也可通过[控制面版]=[服务],选中相应服务,按工具栏上的[启动]按钮来启动。

#

E:”>net start OracleServiceORADB
OracleServiceORADB 服务正在启动 ……………………………….
OracleServiceORADB 服务已经启动成功。

E:”>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 28 11:17:53 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn system/qqqqqq@oradb as sysdba
已连接。
SQL>
SQL> desc user_views
名称 是否为空? 类型


VIEW_NAME NOT NULL VARCHAR2(30)
TEXT_LENGTH NUMBER
TEXT LONG
TYPE_TEXT_LENGTH NUMBER
TYPE_TEXT VARCHAR2(4000)
OID_TEXT_LENGTH NUMBER
OID_TEXT VARCHAR2(4000)
VIEW_TYPE_OWNER VARCHAR2(30)
VIEW_TYPE VARCHAR2(30)
SUPERVIEW_NAME VARCHAR2(30)

SQL> exit
从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中断开

E:”>oemapp console
E:”>

二、登陆到ManagerServer:

E:”>net stop OracleServiceOEMREP
OracleServiceOEMREP 服务正在停止……..
OracleServiceOEMREP 服务无法停止。

#

打开资料档案库服务,也可通过[控制面版]=[服务],选中相应服务,按工具栏上的[启动]按钮来启动。

#

E:”>net start OracleServiceOEMREP
OracleServiceOEMREP 服务正在启动 ……………………………………….
OracleServiceOEMREP 服务已经启动成功。

在Windows上,使用net命令能否启动数据库,还受到一个注册表参数的影响,这个参数是:ORA__AUTOSTART

对于我的Oracle10g数据库,这个键值位于HKEY_LOCAL_MACHINE”SOFTWARE”ORACLE”KEY_Ora10g,我的数据库SID为eygle,这个参数就是:ORA_EYGLE_AUTOSTART

当这个参数设置为True时,当我们启动服务时,Oracle数据库就会随之启动;反之,数据库就不会启动。

测试1,ORA_EYGLE_AUTOSTART=true时:

C:”>net start oracleserviceeygle
OracleServiceEYGLE 服务正在启动 …………………
OracleServiceEYGLE 服务已经启动成功。

C:”>sqlplus “/ as sysdba”

SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 8月 22 09:27:35 2006

Copyright (c) 1982, 2005, Oracle. All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select instance_name from v$instance;

INSTANCE_NAME

eygle

测试2,ORA_EYGLE_AUTOSTART=FALSE时:

C:”>net start oracleserviceeygle
OracleServiceEYGLE 服务正在启动 .
OracleServiceEYGLE 服务已经启动成功。

C:”>sqlplus “/ as sysdba”

SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 8月 22 09:30:03 2006

Copyright (c) 1982, 2005, Oracle. All rights reserved.

已连接到空闲例程。

SQL>

#

尝试用sqlplus直接连接资料档案库。

#

E:”>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 28 11:58:26 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn /as sysdba
已连接。
SQL> conn system/qqqqqq@oemrep
已连接。
SQL> exit
从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中断开

#

启动Agent

#

E:”>agentctl start

DBSNMP for 32-bit Windows: Version 9.2.0.1.0 - Production on 28-6月 -2005 11:59:51

Copyright (c) 2002 Oracle Corporation. All rights reserved.

正在启动 Oracle Intelligent Agent…….
代理已启动

#

如果Agent不能成功启动,则:

转到%oracle_home%”network”agent”下,删除所有后缀名为“.q”的文件。

如果还是不行,把services.ora也删除。

#

E:”>oemctl start oms
OracleOraHome92ManagementServer 服务正在启动 ………….
OracleOraHome92ManagementServer 服务已经启动成功。

#

Management Server启动过程中会要求输入用户名/密码,初始为sysman/oem_temp

#

E:”>oemapp console
E:”>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值