windows怎么启动oracle

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows怎么启动oracle相关的知识,希望对你有一定的参考价值。

一、把Oracle服务改为手动
1
打开“服务”窗口。或者“管理”窗口
【小技巧】 在运行窗口输入services.msc 或者 在我的电脑上右单击打开管理窗口。

2
找到Oracle服务。
【小技巧】 直接按键盘上的字母o,可以快速定位到以O开始的服务。
一般我们打开Oraclserver和listener这两个服务就可使用Oracle数据库了,其他的Oracle服务可以关闭,不用启动。

3
双击该服务,在弹出窗口把服务改为手动。
下次电脑启动时,Oracle服务就不会启动了。
【注】Oracle数据库默认安装时设置的内存值占用:40%。【4G的内存,Oracle要占去40%】,所以要是不用Oracle数据库的话,最好关闭。这样可以让电脑腾出更多的内存空间,让其他程序运行更快点。

END
二、创建启动、关闭 Oracle服务的批处理
1
新建启动批处理文件。
文件名:startOracleServer.bat
文件内容:
net start OracleServiceORCL
net start OracleOraDb11g_home1TNSListener
2
新建关闭批处理文件。
文件名:stopOracleServer.bat
文件内容:
net stop OracleOraDb11g_home1TNSListener
net stop OracleServiceORCL
3
附录:
net start 和 net stop 用法
net start 【服务名】
例如上面的 “OracleServiceORCL”
net stop 【服务名】
例如:net stop OracleServiceORCL
【小技巧】
服务名不区分大小写
这里的服务名是Oracle的安装服务名称。(如图所示)

如果要暂停批处理使用:pause
如果添加注释使用:rem 注释内容
我是用的批出文件的颜色:color 0a

END
三、启动或关闭 Oracle服务
1
双击对应的批处理文件
用到的时候启动,不用的时候关闭。再也不用担心我那可怜的的内存。

2
建议把批处理文件放到快速启动软件中。
例如我就放到了AltRun这个款软件中。启动时很方便。【Alt+R ,回车】太帅了……
参考技术A 检查监听器状态:
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
OracleOraHome92Managemen
tServer 服务正在启动 .............
OracleOraHome92Managemen
tServer 服务已经启动成功。

启动Oracle 界面管理器EMS
C:\>oemapp console

windows中的oracle12SE后启动的系统服务的列表

下图是我安装在windows 10下安装好oracle12.10SE之后的启动的系统服务的列表。

通常,我是将其全部修改为手动启动。当需要用oracle服务的时候,只需要启动对应的实例的服务和tnslistener即可。图片相当于是个服务列表的“备份”。

我对这个图片的用法是:获取它的绝对的URL,然后,在笔记的markdown中去调用。

以上是关于windows怎么启动oracle的主要内容,如果未能解决你的问题,请参考以下文章

电脑windows启动失败该怎么办?

电脑启动时显示windows无法启动怎么解决

Win7电脑开机无法正常启动怎么办

win7电脑无法启动Windows Time服务怎么办

电脑开机显示windows无法正常启动,是怎么回事呢?

windows tomcat 怎么启动tomcat