手动启动 oracle 服务

手动启动 Oracle 服务

为了学习,我们常常会在个人PC上安装 Oracle 数据库,这大大影响了计算机的运行速度,尤其是计算机开机速度,如果 Oracle 使用频率并不是非常高,我们可以禁止 Oracle 服务的自动启动,真正用到的时候再手动启动 Oracle 服务。
此文用到的 Oracle 版本: oracle 11g R2

步骤一:修改 oracle 服务为手动启动

  1. 打开服务窗口:使用 win + r 快捷键打开运行窗口,输入命令 services.msc 按回车。
    这里写图片描述
  2. 在标准视图下找到 oracle 的 7个服务。
    这里写图片描述

    • Oracle 11g R2 7个服务简介:
      • Oracle ORCL VSS Writer Service:Oracle卷映射拷贝写入服务,(非必须启动)
      • OracleDBConsoleorcl:Oracle数据库控制台服务,(非必须启动)
      • OracleJobSchedulerORCL:Oracle作业调度(定时器)服务,(非必须启动)
      • OracleMTSRecoveryService:服务端控制(非必须启动)
      • OracleOraDb11g_home1ClrAgent:Oracle数据库.NET扩展服务的一部分。 (非必须启动)
      • OracleOraDb11g_home1TNSListener:监听器服务,远程访问的时候需要, (必须启动)
      • OracleServiceORCL:数据库服务(数据库实例), (必须启动)
    • 因个人安装环境不同,这三个服务的命名可能会不一样:
      • OracleOraDb11g_home1ClrAgent
      • OracleOraDb11g_home1TNSListener
      • OracleServiceORCL
  3. 可以看到 7 个服务中有四个服务的启动方式是自动运行的(绿线标注的)。把这几个服务的启动方式改成手动。
    这里写图片描述
    • 以OracleDBConsoleorcl 服务为例:右击服务–> 属性
      这里写图片描述
      这里写图片描述
  4. 修改完成之后的效果,除 OracleJobSchedulerORCL 是禁用外,其他的都是手动启动。
    这里写图片描述

步骤二:手动启动oracle 服务

执行完步骤一,每次重新开启计算机,如果需要使用 oracle 数据库的话,都要手动启动 oracle 服务。

  • 按照先后顺序依次启动服务”OracleServiceORCL“,”OracleOraDb11g_home1TNSListener“,这两个服务是必须启动的。启动方式:右击服务 –> 启动,如下图所示

    这里写图片描述

  • 如果需要用控制台服务的话(就是下面这个管理数据库Web页面),需要再启动下服务”OracleDBConsoleorcl“,不过一般是不用这个的。
    这里写图片描述

步骤三:创建服务启动脚本

每次需要使用 oracle 时,都需要使用 步骤二开启 oracle 服务,多少有些不方便,我们可以创建一个启动服务的批处理脚本,每次执行这个脚本文件即可启动服务。

  1. 新建一个 startOracle.bat 的文件,键入以下脚本,文件名随意,但后缀一定是要.bat的。

    :: 取得管理员权限
    :Main
    @echo off
    cd /d "%~dp0"
    cacls.exe "%SystemDrive%\System Volume Information" >nul 2>nul
    if %errorlevel%==0 goto Admin
    if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
    echo Set RequestUAC = CreateObject^("Shell.Application"^)>"%temp%\getadmin.vbs"
    echo RequestUAC.ShellExecute "%~s0","","","runas",1 >>"%temp%\getadmin.vbs"
    echo WScript.Quit >>"%temp%\getadmin.vbs"
    "%temp%\getadmin.vbs" /f
    if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
    exit
    :Admin
    
    :: 手动启动 oracle 服务,因安装环境不同,需将下列服务名称替换成自己的
    net start "OracleServiceORCL"
    net start "OracleOraDb11g_home1TNSListener"
    
    :: 如果需要使用控制台服务,将下面这行前面的 :: 删掉,并将服务名称替换成自己的
    :: net start "OracleDBConsoleorcl"
    
    pause
  2. 因个人安装环境不同,这两个服务的命名可能会不一样,需要将脚本中的服务名替换成自己的。
    • OracleOraDb11g_home1TNSListener
    • OracleServiceORCL
  3. 如需开启控制台服务,将倒数第二行前面的两个冒号去掉,并将服务名替换成自己的。
    • OracleDBConsoleorcl
  4. 再服务停止的情况下运行脚本,检查脚本是否正常运行。
    这里写图片描述
posted @ 2017-12-09 09:28  Duke-码动青春  阅读(324)  评论(0编辑  收藏  举报