zoukankan      html  css  js  c++  java
  • 令人十分怨念的tomcat注册成windows服务(转)

     最近不知道怎么回事,服务器上的程序突然出问题了,有些页面无法正常访问了,或者只显示一半,以前也遇到过这种情况,应该是在读取数据的时候,出现了问题,继而联想到这样发布其实还是存在一定隐患的。
      当初,为了使用户方便,我直接将tomcat注册成了Windows服务,并且将启动类型设置为“自动启动”,这样即使用户因为断电或其它原因,重启了服务器,程序也能自动起,不需要用户再去手工启动。直到今天这个问题暴露,我才意识到一个大问题
    程序启动时,需要连接数据库,但是数据库服务往往启动的比较慢,因此如果在数据库服务完全启动之前,应用程序服务已经启动完成,那么就会造成错误,出现今天这种局面。
      google了半天,采用以下解决方案:
     
    Java代码 复制代码
    1. sc config tomcatAPP depend= OracleServiceOPB/OracleServiceORCL  

    就是说,将tomcat服务,设置成为依赖这两个数据库服务,即这两个数据库实例启动之后,才会启动tomcat。
    这里需要注意,“tomcatAPP”这个服务名,并不是在服务列表里看到的名字,那个名字并不准确,看下图



    这里要写“服务名”,而不是“显示名”,或者最简单,到注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services中去看真实的服务名。另外,sc命令的格式也要注意,"depend="是一个整体的命令参数,后面要跟一个空格,然后再跟依赖的服务名称,多个服务之间用/隔开,服务名上没有引号。
      完成这条命令之后,按理说就应该可以了,我们可以看到,tomcat服务和oracle服务之间,也确实建立了依赖关系



      但是令人十分怨念的是,重启之后,问题居然依旧,靠!!再google之。等解决了再补上~~

    总结一下全部的步骤,也期待高人给指点一下:
    1,打开CMD。
    2,进入TOMCAT_HOME/bin目录下。
    3,输入命令:"service install tomcatAPP",安装服务。卸载服务的命令是:"service reomve tomcatAPP"
    。4,设置服务为自动启动,输入命令:"sc config tomcatAPP start= auto"。
    5,设置服务依赖关系,输入命令:"sc config tomcatAPP depend= OracleServiceOPB/OracleServiceORCL"
    6,重启机器,看看有没有效果。
  • 相关阅读:
    C#连接数据库的三种方法
    远程控制mysql出现的问题
    DFS_子集
    DFS_全排列
    Centos下搭建Mysql
    Nginx与PHP(FastCGI)的安装、配置与优化
    Centos下主DNS的搭建
    Nginx的基本配置与优化
    Nginx服务器的安装与配置
    gdb基本命令
  • 原文地址:https://www.cnblogs.com/rainbowzc/p/1896939.html
Copyright © 2011-2022 走看看