Mysql+Tomcat+JDK 一键启动包

                            Mysql+Tomcat+JDK   一键启动包

最近做了个小项目,就是一个简单的学员管理后台放在一个笔记本上供客户使用,考虑到不是服务器,可能因为客户的误操作,将配置好的环境误删除,所以做了这个一键启动包,使用绿色版的mysql+jdk1.8+tomcat8.5,编写一个一键启动脚本,用来配置临时环境变量、启动mysql及tomcat

  1. JDK
    去官网下载jdk1.8,在本机安装之后将jdk的文件夹拷贝下来(不需要JRE)
    Mysql+Tomcat+JDK 一键启动包_第1张图片
  2. MySQL
    官网下载一个mysql绿色版(https://downloads.mysql.com/archives/community/)
    Mysql+Tomcat+JDK 一键启动包_第2张图片
    解压后在mysql文件夹下新建my.ini文件,填写一下配置
[client]
port        = 3306
socket      = /tmp/mysql.sock


[mysqld]
port        = 3306
socket      = /tmp/mysql.sock
#character-set-server   修改字符集编码,防止中文乱码成??
character-set-server=utf8

skip-locking
key_buffer_size = 384M
max_allowed_packet = 1M
table_open_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
thread_concurrency = 8
log-bin=mysql-bin
server-id   = 1

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-beep
#default-character-set   修改字符集编码,防止中文乱码成??
default-character-set=utf8


[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

在这里MySQL启动方式由bin文件夹下的mysqld.exe管理,不是使用服务

  1. Tomcat
    官网下载tomcat8.5(https://tomcat.apache.org/download-80.cgi)
    由于tomcat启动时不可以将命令行窗口关闭,为了防止客户误操作,将tomcat\bin\setclasspath.bat中的set _RUNJAVA=”%JRE_HOME%\bin\java.exe”修改为set _RUNJAVA=”%JRE_HOME%\bin\javaw.exe”即可不弹窗启动(ps:这也就是为什么启动脚本中判断tomcat是否启动时是用javaw.exe判断进程是否存在)
  2. 启动脚本
@echo off
::以管理员身份运行
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
::以上是以管理员身份运行,其他操作脚本放在下面就行
::判断是否存在mysqld.exe
tasklist /nh|find /i "mysqld.exe"
if errorlevel 1 (
::如果不存在该进程,则将mysql启动,%~dp0是当前脚本所在路径
    start %~dp0MySql\bin\mysqld.exe
) else (
::如果存在该进程,则直接输出
    cls& echo MySQL is started!
)

::设置临时Java环境变量
@set JAVA_HOME=%~dp0\jdk
@set CLASS_PATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
@set PATH=%PATH%;%JAVA_HOME%\bin
::通过判断javaw.exe是否运行来判断tomcat是否运行
tasklist /nh|find /i "javaw.exe"
if errorlevel 1 (
    cd %~dp0tomcat8.5\bin
    startup.bat
) else (
    cls& echo Tomcat is started!
)
exit

ps:这四样东西要放在一个文件夹中

你可能感兴趣的:(Mysql+Tomcat+JDK 一键启动包)