farmer111 发表于 2018-10-2 09:18:22

tomcat+jdk+mysql免安装的整合形式

  一:tomcat+jdk 免安装
  很久以前就开始用 tomcat 的免安装版(zip 解压版)。直接运行 bin/startup.bat 的方式运行,有一个不好的地方就是注销登录用户程序就退出了。比如 windows 2003 server 版中运行 tomcat 以提供对外服务,很可能管理员启动了 tomcat 后就退出 windows 2003 server。这样 tomcat 也随之退出. 以 windows 服务的方式运行就不会,也可方便地设置开机运行.
  免安装的jdk + tomcat发布应用程序步骤
  一、拷贝一个安装后的jdk .如:jdk1.6.0_10(拷贝bin, include, lib,jre四个文件夹,
  网上也有人没有加jre文件夹,反正都可以试一试)
  二、拷贝一个绿色免安装的tomcat .如:apache-tomcat-6.0.18
  三、把jdk放到tomcat下面,如:apache-tomcat-6.0.18 / jdk1.6.0_10
  四、修改相关的bat文件(我这里用两种方式来启动: startup.bat方式和服务方式)
  方式①:startup.bat方式来启动tomcat
  只要修改apache-tomcat-6.0.18 /bin/startup.bat 即可,修改内容如下:
  在set CURRENT_DIR=%cd%
  if not "%CATALINA_HOME%" == "" goto gotHome
  之间(如果没有改变过文件,应该是在25行和26行之间) 加入下面内容:
  set JAVA_HOME=%CURRENT_DIR%/jdk1.6.0_10
  if exist "%JAVA_HOME%" goto gogoTomcat
  cd ..
  set JAVA_HOME=%cd%/jdk1.6.0_10
  cd %CURRENT_DIR%
  :gogoTomcat
  方式②:用服务的方式来启动tomcat
  1、修改配置文件,安装tomcat服务
  这里示例一下安装,cd 在 tomcat_home,如:N:/apache-tomcat-6.0.18
  1.N:/apache-tomcat-6.0.18>bin/service.bat install mytomcat
  2.Installing the service 'mytomcat' ...
  3.Using CATALINA_HOME: N:/apache-tomcat-6.0.18
  4.Using CATALINA_BASE: N:/apache-tomcat-6.0.18
  5.Using JAVA_HOME:   N:/apache-tomcat-6.0.18/jdk1.6.0_10
  6.Using JVM:      N:/apache-tomcat-6.0.18/jdk1.6.0_10/jre/bin/server/jvm.dll
  7.The service 'mytomcat' has been installed.
  这里做一下说明, mytomcat是自定义的服务名,如果直接bin/service.bat install,也是可以的,服务名默认就是你tomcat的版本,比如我的apache-tomcat-6.0.18,这样服务名就是tomcat6.
  这样在(控制面板->管理工具->服务)中可以看到名为 Apache Tomcat mytomcat 的服务了。
  右击“Apache Tomcat mytomcat”-> 属性,在“启动类型”里选择“自动”,就可以在开机的时候自动运行。
  这里的自动也可以在bin/service.bat中设置:
  修改service.bat,找到下面这句
  "%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%/temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%/conf/logging.properties" --JvmMs 128 --JvmMx 256
  加上一个参数 --Startup=auto,变成
  "%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%/temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%/conf/logging.properties" --JvmMs 128 --JvmMx 256 --Startup=auto这样就可以变成自动了,使得免安装也可以实现了开机启动服务
  默认的 jvm 内存大小:最大 256M;最小 128M。用
  --JvmMs 128 --JvmMx 256指定的,也可以修改它,在 bin/service.bat 大概在最后面几行,保存重新安装一下(虽然 Apache Tomcat mytomcat 的服务属性里有“启动参数”设置,但是不会用)。
  到这里方式②的配置就算完成了.点击tomcat6w.exe看看tomcat的运行情况
  2、删除服务
  想删除服务的话可以service.bat remove mytomcat(如果安装时没加服务名的话,这里也不用加).
  1.N:/apache-tomcat-6.0.18>bin/service.bat remove mytomcat
  2.The service 'mytomcat' has been removed
  3、设置桌面快捷方式
  为了方便也可以在桌面创建一个快捷方式
  在tomcat/bin下找到 tomcat6w.exe,新建一个 tomcat6w.exe 的快捷方式,
  右键单击属性,修改" 目标(T): " 为 " N:/apache-tomcat-6.0.18/bin/tomcat6w.exe //MS// mytomcat"
  " //MS// mytomcat"即为所加内容,安装的时候是
  N:/apache-tomcat-6.0.18>bin/service.bat install
  也就是没有输入服务名,那就写上tomcat的版本名,我的是tomcat6,即输入://MS//tomcat6
  4、可能会出现的问题
  我自己实践的时候,JAVA_HOME好像有点问题,于是我就编辑了service.bat文件,在33和34之间加入了定义JAVA_HOME的代码.
  在set CURRENT_DIR=%cd%
  if not "%CATALINA_HOME%" == "" goto gotHome
  之间加入代码和方式①中加入的代码一样的
  set JAVA_HOME=%CURRENT_DIR%/jdk1.6.0_10
  if exist "%JAVA_HOME%" goto gogoTomcat
  cd ..
  set JAVA_HOME=%cd%/jdk1.6.0_10
  cd %CURRENT_DIR%
  :gogoTomcat
  参考
  http://sunrain-lyb.javaeye.com/blog/410568
  http://blog.chenlb.com/2009/07/noinstall-tomcat-run-in-windows-service.html
  在google搜索关键字: tomcat 免安装服务
  二: mysql免安装(mysql-noinstall-5.1.40-win32.zip)
  将MySQL全部的安装备份目录拷贝到目标目录
  1、修改配置文件
  打开MySQL的安装目录里my.ini,确保basedir和datadir的路径是你MySQL目标目录的路径
  basedir="C:/Program Files/MySQL/MySQL Server 5.0/"
  datadir="C:/Program Files/MySQL/MySQL Server 5.0/Data/"
  这里的路径使用正斜线,而非反斜线;如果使用反斜线,必须成对使用
  basedir=E:/mysql datadir=E:/mydata/data
  或者basedir=E://mysql datadir=E://mydata//data
  basedir="C:/Program Files/MySQL/MySQL Server 5.1/"
  datadir="C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/"
  2、将mysql作为系统的services 安装, 卸载, 启动,停止
  在windows系统,建议将mysql启动为系统服务,这样系统启动关闭的时候自动启动关闭mysql
  以下步骤将mysql作为系统的services
  N:/ MySQL Server 5.1>bin/ mysqld --install MySQL --defaults-file=C:/my-opts.cnf
  其中“MySQL”作为系统服务的名字
  如果不提供“--defaults-file”参数,则系统采用mysql缺省的配置文件进行服务配置,也可以使用该参数配置系统服务
  使用mysql services运行方式的时候,在console不能看到系统的出错信息。这些错误信息可以在“%YOUR_MYSQL_PATH/data”目录下找到,文件的后缀是“.err”
  当mysql作为系统的services使用时,可以使用下面的命令启动和停止mysql服务:
  启动:net start mysql
  停止:net stop mysql
  你可以使用下面的命令,将mysql services安装为一个手动启动的服务:
  mysqld --install-manual
  去除mysql services,先使用“net stop mysql”停止服务,然后使用命令“mysqld --remove”去除服务
  或者sc delete mysql(其中“mysql”作为系统服务的名字)
  3、测试mysql的安装
  N:/ MySQL Server 5.1>bin/mysql -uroot -padmin
  4、遇到1067的问题
  MySQL 服务正在启动 .
  MySQL 服务无法启动。
  系统出错。
  发生系统错误 1067。
  进程意外终止。
  先是在google找了,很久,搜索关键字:mysql 免安装发生系统错误 1067,找了半天,一点都没有效果.
  后来发现/data目录下有个.err的文件.里面是这样的:
  100310 17:23:34 Plugin 'FEDERATED' is disabled.

  InnoDB: Error: log file ./ib_logfile0 is of different>  InnoDB: than specified in the .cnf file 0 20971520 bytes!
  100310 17:23:34 Plugin 'InnoDB' init function returned error.
  100310 17:23:34 Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
  100310 17:23:34 Unknown/unsupported table type: INNODB
  100310 17:23:34 Aborting
  才发现问题所在,以Plugin 'InnoDB' init function returned error. 为关键字,在google上搜到csdn一篇不错的文章.http://topic.csdn.net/u/20080724/18/00c3f80f-464d-4b59-a659-53adcb12aef0.html
  里面有两种解决方案:
  一:在你的配置文件里面写上 skip-innodb 重新启动就好了(这个我试了试,不行)
  二:直接把ibdata 以及ib_logfile0、ib_logfile1删掉再启动就好了(Ok,这个就解决了我的问题)
  参考:
  http://edu.codepub.com/2009/1201/18374.php
  http://wfwkiss.javaeye.com/blog/318750

页: [1]
查看完整版本: tomcat+jdk+mysql免安装的整合形式