jdk+tomcat+mysql一键安装脚本
最近在搞一个web项目部署,每次都要安装jdk、配置环境变量、安装tomcat和mysql。对于非开发人员,还是有点难度的,经常出错,然后就整理了一个自动化的脚本。
JDKinstall.bat
@echo off set myjdkpath=C:\Program Files\Java\jdk1.8 echo ********************************************** echo. echo 欢迎使用一键安装jdk echo. echo. echo ********************************************** echo. echo 正在安装jdk,请不要执行其他操作 echo. echo 请稍等,这大约需要几分钟 echo. start /WAIT jdk-8u181-windows-x64\jdk-8u181-windows-x64.exe /qn INSTALLDIR="%myjdkpath%" echo jdk安装完毕 set JAVA_HOME=%myjdkpath% set PATH=%PATH%;%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin set CLASSPATH=.;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar set RegV=HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment reg add "%RegV%" /v "JAVA_HOME" /d "%JAVA_HOME%" /f reg add "%RegV%" /v "Path" /t REG_EXPAND_SZ /d "%PATH%" /f reg add "%RegV%" /v "CLASSPATH" /d "%CLASSPATH%" /f exit
tomcat是免安装版,优先安装到D盘,如果没有D盘则安装到C盘。
1 @echo off 2 3 echo ********************************************** 4 echo. 5 echo 将要安装Tomcat 6 7 echo. 8 9 echo. 10 11 echo ********************************************** 12 13 echo. 14 15 echo 正在安装Tomcat,请不要执行其他操作 16 17 echo. 18 19 echo 请稍等,这个时间大约需要几分钟 20 21 echo. 22 23 if exist d: (set dir=D) else (set dir=C) 24 25 set TomcatPath="%dir%:\Program Files\Apache Software Foundation\" 26 mkdir %TomcatPath% 27 mkdir %TomcatPath%image 28 xcopy apache-tomcat-8.5.43-windows-x64 %TomcatPath% /e /y 29 30 cd %TomcatPath%Tomcat 8.5\bin 31 %dir%: 32 service.bat uninstall 33 service.bat install 34 35 exit
mysql也是免安装版的,免安装的源目录下准备好自己所要的my.ini配置文件,mysqlinstall.bat安装脚本 以及建表操作表的sql文件update.sql。目录结构如下:
还有一个mysql.bat文件,是把上面的目录结构拷贝到D盘,如果D盘不存在,则拷贝到C盘,然后进入到安装目录里,执行mysqlinstall.bat文件。
mysql.bat脚本内容:
@echo off echo ********************************************** echo. echo 将要安装mysql echo. echo. echo ********************************************** echo. echo 正在安装mysql,请不要执行其他操作 echo. echo 请稍等,这个时间大约需要几分钟 echo. echo "注册MySql服务开始" echo "停止已存在的服务MySQL" net stop MySQL57 echo "删除已存在的服务MySQL" sc delete MySQL57 echo "删除服务执行文件项" REG Delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL57 /v ImagePath /f if exist d: (set dir=D) else (set dir=C) set MysqlPath="%dir%:\Program Files\Mysql\mysql-8.0.16-winx64" mkdir %MysqlPath% xcopy mysql-8.0.16-winx64 %MysqlPath% /e /y cd %MysqlPath% %dir%: mysqlinstall.bat exit
mysqlinstall.bat脚本内容:
@echo off rem ************MySQL环境变量部署*********************** "%~dp0"\bin\mysqld.exe -install echo "添加服务执行文件项" REG add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL57 /v ImagePath /t REG_EXPAND_SZ /d "%cd%\bin\MySqld.exe --defaults-file=\"%cd%\my.ini\" MySQL57" /f cd bin mysqld --initialize-insecure net start mysql57 set dbPassword=test1234 "%~dp0"bin\mysqladmin.exe -uroot password "%dbPassword%" SET dbhost=127.0.0.1 SET dbuser=root SET sqlpath=%~dp0 set sqlfile=update.sql echo %sqlpath% mysql -h%dbhost% -u%dbuser% -p%dbPassword% < "%sqlpath%%sqlfile%" --default-character-set=gbk exit
update.sql 创建database,然后创建表,并插入记录
use mysql; alter user 'root'@'localhost' identified with mysql_native_password by 'test1234'; flush privileges; CREATE DATABASE if not exists face_compare_db DEFAULT CHARACTER SET GBK COLLATE gbk_chinese_ci; USE face_compare_db; -- ---------------------------- -- Table structure for `user` -- ---------------------------- DROP TABLE IF EXISTS user; CREATE TABLE user ( id int(20) NOT NULL AUTO_INCREMENT, username varchar(60) NOT NULL, password varchar(50) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=GBK; -- ---------------------------- -- Records of user -- ---------------------------- INSERT INTO user VALUES ('1', 'admin', '4a0e4a801fc3');
高山流水,海纳百川!