Oracle在Windows安装后的服务和数据库的关系

晨曦之光 发布于 2012/04/25 16:17
阅读 168
收藏 0

在Windows中安装好Oracle后,会在Windows中创建一些服务,如OracleOraDb10g_home1TNSListener用来监听服务端口,以及和实例相关的OracleServiceORCL用来启动实例,OracleDBConsoleorcl是用来启动EM的。

OracleOraDb10g_home1TNSListener可以用lsnrctl start命令来启动,只有它启动后才能监听安装时候指定的端口,如1521,为机器上的多个实例服务。

OracleServiceORCL是为orcl实例服务的,如果一台机器创建了多个数据库,有多个实例的话,每个实例都对应这样一个服务。可以通过命令 oradim -startup -sid orcl来启动。

OracleDBConsoleorcl对应orcl实例的EM,启动后就可以通过url访问em了。

其中OracleServiceORCL的启动通常意味着对应的数据库也被打开了(start open),但是可以通过修改注册表的ORA_ORCL_AUTOSTART,将其值由TRUE改为FALSE,这样的话,这个服务启动后,数据库这时候是没有start的。

这时候通过 sqlplus sys/sys as sysdba 连接的话可以看到Connected to an idle instance.这时候执行SQL,会得到错误:ORA-01034: ORACLE not available。

这时候,通过startup可以将实例启动。

查看 的属性,可以看到可执行文件路径为,d:\oracle\product\10.2.0\db_1\bin\ORACLE.EXE ORCL,所以我们可以不启动这个服务,而是在CMD中通过ORACLE.EXE ORCL也可以启动这个服务的“部分”功能,之所以说是“部分”,因为这时候通过走网络的话,连接不到这个实例的:

1,将OracleServiceORCL停掉,2,在cmd中通过 oracle.ext orcl将“服务”启动,3通过sqlplus sys/sys as sysdba这可以连到实例,通过sqlplus sys/sys@orcl as sysdba则不能连接到实例。



原文链接:http://blog.csdn.net/kkdelta/article/details/7169338
加载中
返回顶部
顶部