背景:

作为一个程序员,在日常的工作中,我们电脑经常需要同时运行很多程序,如:Eclipse、浏览器、即时通讯软件等,甚至经常需要打开几个Office文档或者pdf文档。这时候你的内存估计已经爆表了吧,尤其是现在想Chrome和FireFox这类的浏览器,随便安装几个插件,内存占用就大得惊人。而我们为了满足需要又不得不安装各种各样的插件,因为这两款浏览器在不安装任何插件的情况下跟IE没什么分别。

如上图所示,FireFox、Java的两个进程还有Eclipse稳稳地占据了内存使用的前四,而这时候如果你电脑还开着Oracle的服务,那么你的电脑会卡到令人发指。

把电脑升级到8G内存,刚开始觉得很爽,没过多长时间,又变得很慢了。还真是给它多少内存,它就敢给你用多少内存呀。无限制的升级硬件显然是不实际的方法,所以我们需要从软件上动脑筋,这句需要我们把平时不常用的服务以及后台进程关掉。

浏览器我们每天都离不开,而且关掉主程序也不会有后台进程,所以我们的目标不是它;Java进程和Eclipse每天开放也离不开它们,所以也不能对它们下黑手;嘿嘿,Oracle不好意思啦,只能将你干掉了,因为有了Hibernate之类的框架,让我们在写代码的时候不需要知道我们将要面向什么数据库。所以我们完全没有必要在自己的机器上每天开着Oracle的那些笨重的后台服务。一个小小的MySQL完全可以应付,所以我们只需要将它的服务全部关掉,用的时候再打开即可。

但是新的问题又来了,每次需要开启服务的时候,还需要打开系统的服务管理,找到Oracle的相关服务,然后挨个右击点击启动,我想有过类似操作经验的朋友,都会觉得这是一个非常令人烦躁的工作。

但是身为程序员的我们,应该很自然的想到,这些繁杂的工作肯定可以通过程序来自动帮我们解决。没错,而且非常简单,只需要几行代码就可以搞定!

解决方案:

首先,到服务(按“Win”键,输入“服务”,回车)里找到Oracle的相关服务,我安的是11g,相关服务如下:

我们并不需要将所有服务全部开启,基本的功能只需要开启如下两个服务即可:

OracleServiceORCL
OracleOraDb11g_home1TNSListener

将以下代码保存成”.bat“文件或”.cmd“文件即可。

具体代码:

@echo off
net start OracleServiceORCL
net start OracleOraDb11g_home1TNSListener
pause

运行效果:

运行完成以后,可以看到两个服务的状态已经变成了“已启动“:

停止服务代码只需将“start”改成“stop”:

@echo off
net stop OracleServiceORCL
net stop OracleOraDb11g_home1TNSListener
pause

运行效果:

好了,有了这两段代码Oracle的服务就对我们唯命是从了,招之则来,挥之则去。想想都觉得爽歪歪了。下面为大家附上Oracle各个服务的详细说明:

1. Oracle ORCL VSS Writer Service:Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadow copy)。它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能。(非必须启动)

2. OracleDBConsoleorcl:Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。在运行Enterprise Manager(企业管理器OEM)的时候,需要启动这个服务。(非必须启动)

3. OracleJobSchedulerORCL:Oracle作业调度(定时器)服务,ORCL是Oracle实例标识。(非必须启动)

4. OracleMTSRecoveryService:服务端控制。该服务允许数据库充当一个微软事务服务器MTS、COM/COM+对象和分布式环境下的事务的资源管理器。(非必须启动)

5. OracleOraDb11g_home1ClrAgent:Oracle数据库.NET扩展服务的一部分。 (非必须启动)

6. OracleOraDb11g_home1TNSListener:监听器服务,服务只有在数据库需要远程访问的时候才需要。(非必须启动,下面会有详细详解)。

7. OracleServiceORCL:数据库服务(数据库实例),是Oracle核心服务该服务,是数据库启动的基础, 只有该服务启动,Oracle数据库才能正常启动。(必须启动)那么在开发的时候到底需要启动哪些服务呢?

对新手来说,要是只用Oracle自带的sql*plus的话,只要启动OracleServiceORCL即可,要是使用PL/SQL Developer等第三方工具的话,OracleOraDb11g_home1TNSListener服务也要开启。OracleDBConsoleorcl是进入基于WEB的EM必须开启的,其余服务很少用。

注:ORCL是数据库实例名,默认的数据库是ORCL,你可以创建其他的,即OracleService+数据库名。

菜鸟学数据库(六)——方便快捷的开启、关闭Oracle服务的更多相关文章

  1. windows bat命令 开启关闭Oracle服务

    0.吐槽 单位发的ThinkPad T61.太弱小了. 问题是我去百度下T61,发现它好贵好贵.真心无力吐槽.还不如给我发台外星人,廉价点的. . Oracle一开就内存就不够了.所以绝对不能让它开机 ...

  2. 菜鸟学数据库(五)——MySQL必备命令

    今天跟大家分享一下MySQL从连接到具体操作的一系列常用命令.可能有的人觉得现在有很多可视化的工具,没必要再学习那些具体的命令了,但是我不这么认为,不可否认那些工具的确让我们的工作更加方便快捷,但是如 ...

  3. 手动开启/关闭Oracle数据库

    @echo off@echo 启动/关闭数据库set /p flag=您是否要启动数据库?(是按Y启动,否按N关闭) goto answer%flag% goto end :answery echo ...

  4. 创建一个简单的WCF程序2——手动开启/关闭WCF服务与动态调用WCF地址

    一.创建WCF服务器 1.创建WCF服务器的窗体应用程序 打开VS2010,选择文件→新建→项目菜单项,在打开的新建项目对话框中,依次选择Visual C#→Windows→Windows窗体应用程序 ...

  5. ubuntu 开启关闭mysql服务

    etc/init.d/mysql restart //重启 etc/init.d/mysql start //开启 etc/init.d/mysql stop //停止

  6. 开启关闭mysql服务

    1.Windows下 启动服务 mysqld --console 或 net start mysql 关闭服务 mysqladmin -uroot shudown 或 net stop mysql   ...

  7. window下开启关闭mysql服务

    cmd:管理员模式 net start mysql net stop mysql

  8. 转载“启动\关闭Oracle数据库的多种方法”--来自百度#Oracle

    启动\关闭Oracle数据库的多种方法 启动和关闭oracle有很多种方法. 这里只给出3种方法: l         Sql*plus l         OEM控制台 l         Wind ...

  9. 菜鸟学IT之四则运算升级版

     菜鸟学IT之四则运算升级版 本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 团队代码github远程仓库的 ...

随机推荐

  1. 用C读取json文件

    a jconf_t * read_jconf(const char *file) { static jconf_t conf; // 清空数据 memset(&conf, , sizeof(j ...

  2. github不能访问、加载css、js解决办法

    很奇怪,白天在公司还能正常访问github,晚上回来访问却有问题,表现症状是页面加载慢,并且页面样式明显错乱. 在chrome下用F12开发者工具一看,有2条css和2条js 404 了,猜想应该是g ...

  3. ubuntu sublime 破解

    1.去其官方网站http://www.sublimetext.com/ 把linux版下载下来,解开压缩包,放在你希望的路径下. 2.用vim将其打开 . vim sublime_text 3.将文件 ...

  4. Java中timer的schedule()和schedualAtFixedRate()函数的区别

    本文主要讨论java.util.Timer的schedule(timerTask,delay,period)和scheduleAtFixedRate(timerTask,delay,period)的区 ...

  5. 多级菜单系统安装维护shell脚本实现企业级案例

    演示效果: 1.一级菜单 2.二级菜单 3.执行操作 脚本参考: #!/bin/bash #author lic(oldboy linux student) #date 1304 DISK_NO=&q ...

  6. 树莓派进阶之路 (007) - 树莓派安装cmake3.5 脚本(原创)

    cmake3.5安装脚本: #!/bin/bash cd echo "安装make" sudo apt-get install make echo "安装cmake&qu ...

  7. php如何在某个时间上加一天?一小时? 时间加减(转)

    <?php date_default_timezone_set('PRC'); //默认时区 echo "今天:",date("Y-m-d",time() ...

  8. TOP字句加SQL变量的相关问题

    SQL Server数据库中的变量可以加载TOP字句之后,下文将对TOP字句加SQL变量的相关问题进行讨论,供您参考,希望对您学习SQL数据库有所帮助. SQL Server2005开始,TOP子句后 ...

  9. 替换SQL字段中的换行符,回车符

    替换SQL字段中的换行符,回车符: 在富文本内容中通常会出现回车.换行内容.在sql数据库中这些回车.换行符,输出html后,表现为空格. 这里是在数据导出.导入中发现的,通常把回车.换行符找出来,用 ...

  10. Java中Map相关的快速查找算法与唯一性(转载)

    原文地址:http://blog.csdn.net/chuyuqing/article/details/19629229 在对<Set和hashCode()>的一篇原创文章写完后,由于对自 ...