背景:

作为一个程序员,在日常的工作中,我们电脑经常需要同时运行很多程序,如: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. Axure 图片轮播(广告通栏图片自动播放效果)

    baiduYunpan:http://pan.baidu.com/s/1eRPCy90 里面的“图片轮播”部件即可实现这个功能

  2. 将Excel表格保存为图片

    如何将Excel表格保存为图片,可参见以下几种方法: 1.借助其它办法软件,例如Word或PPT. 步骤:选中Excel中需要被保存成图片的内容,Ctrl+C进行复制,打开Word或PPT办公软件,鼠 ...

  3. Spring Cloud开发实践 - 03 - 接口实现和下游调用

    接口实现 Scot Commons Impl 接口实现模块 scot-commons-impl, 一方面实现了 scot-commons-api 的接口, 一方面将自己暴露为 REST 服务. 有4个 ...

  4. Ubuntu18.04, WPS表格生成中文大写数字的script

    =IF(ROUND(J9,2)<0,"无效数值",IF(ROUND(J9,2)=0,"零",IF(ROUND(J9,2)<1,"" ...

  5. Android网络开发之蓝牙

    蓝牙采用分散式网络结构以及快调频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4GHz ISM(I-工业.S-科学.M-医学)频段,其数据速率为1Mbps,采用时分双工传输方案.   蓝牙 ...

  6. 【转】file_get_contents("php://input")的使用方法

    $data = file_get_contents("php://input");    php://input 是个可以访问请求的原始数据的只读流. POST 请求的情况下,最好 ...

  7. Swift中的map 和 flatMap 原理及用法

    之前对这两个概念有点糊,今天正好遇到一个相关需求,才深入了解了下. 需求如下: 大概就是对一个数组的model,重构成一个新model,返回得到一个新数组 用map很容易实现,不过后来我需要对其中进行 ...

  8. iOS 播放远程网络音乐的核心技术点

    一.前言 这两天做了个小项目涉及到了远程音乐播放,因为第一次做这种音乐项目,边查资料边做,其中涉及到主要技术点有: 如何播放远程网络音乐 如何切换当前正在播放中的音乐资源 如何监听音乐播放的各种状态( ...

  9. VS与SQL资源

    经常在网上看到有同学费尽心思的找SQL server数据库各版本的下载地址,看到别人的求助贴就不自觉的想去帮助他们,但是一个一个去帮助又不太现实,毕竟个人精力有限,既然大家有需求,那么笔者就本着乐于分 ...

  10. Spring MVC @PathVariable被截断

    一.问题描述 一个控制器提供RESTful访问信息: @RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + &qu ...