背景:

作为一个程序员,在日常的工作中,我们电脑经常需要同时运行很多程序,如: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. django之创建站点之基本流程

    创建工程: 1.在D盘下创建一个文件夹名为djangoweb,切换到文件夹所在目录 C:\Administrator>d: D:\>cd d:\djangoweb 2.创建工程(成功没有提 ...

  2. jQuery方法区别(四)click() bind() live() delegate()区别

        click(),bind(),live()都是执行事件时使用的方法,他们之前是有一些区别的,我们在使用这些方法时应该根据需要进行选择. 1.click()方法是我们经常使用的单击事件方法: $ ...

  3. Windows下 VS2015编译RocksDB

    VS2015编译RocksDB RocksDB 是一个来自 facebook 的可嵌入式的支持持久化的 key-value 存储系统,也可作为 C/S 模式下的存储数据库,但主要目的还是嵌入式.Roc ...

  4. JS修改当前控件样式&为控件追加事件

    先搁这吧,今天太晚了,以后再加注释和修整吧.不幸搜到的朋友就别看了 <%@ Page Language="vb" AutoEventWireup="false&qu ...

  5. rtl-sdr在win7和ubuntu16.04的安装

    硬件准备 RTL2832+R820T2 usb dongle x 1 Long wire antenna x 1 USB电视棒的购买: 在淘宝上搜索"软件无线电"或"rt ...

  6. Android(java)同步方法synchronized

    synchronized 是java语言keyword.当它用来修饰一个方法或者一个代码块的时候,可以保证在同一时刻最多仅仅有一个线程运行该段代码. synchronized keyword,它包含两 ...

  7. python正则检测密码合法性

    客户系统升级,要求用户密码符合一定的规则,即:包含大小写字母.数字.符号,长度不小于8,于是先用python写了个简单的测试程序: #encoding=utf-8 #----------------- ...

  8. java struts2入门学习实例--将客户端IP地址和访问方式输出到浏览器

    实例1:实现客户端IP地址和访问方式输出到浏览器. IpAction.java package com.amos.web.action; import javax.servlet.http.HttpS ...

  9. 【DeepLearning】Exercise:Softmax Regression

    Exercise:Softmax Regression 习题的链接:Exercise:Softmax Regression softmaxCost.m function [cost, grad] = ...

  10. 遇到影响服务器性能的cpuspeed 服务

    最近碰到一个很蛋痛的问题,,我在公司的代码上实现了一个功能,然后基于这个测试,结果比对数据发现每天少三千多万条,, 然后我各种优化,各种零碎部功能阉割,,还是丢数据! 之后,监控运行网卡----wat ...