Windows Server 2008 R2 Enterprise x64 部署 nginx、tomcat、mysql
部署nginx
nginx主要做反向代理用,可以单独部署到其它机器上,这里nginx和tomcat部署在同一台机器上。
下载nginx-1.14.1.zip,并解压到目标目录,打开cmd进入到解压后的目录
停止、启动、重启的命令如下:
进程启动后的验证,打开任务管理器
本机浏览器访问测试
安装JDK
本文以安装JDK1.8做演示,下载jdk-8u192-windows-x64.exe,双击运行安装,本机安装的目录是C:\Program Files\Java
系统环境变量可以设置,也可以不设置。
这里不设置,假如你有多个tomcat需要用到不同的JDK版本,建议不要设置系统环境变量,而是更改tomcat的配置文件来指定该tomcat使用哪个版本的JDK。
部署tomcat
下载apache-tomcat-8.5.35-windows-x64.zip,并解压。
编辑 bin/setclasspath.bat ,增加以下两行内容,设置使用的JDK环境变量
set "JAVA_HOME=C:\Program Files\Java\jdk1.8.0_192"
set "JRE_HOME=C:\Program Files\Java\jre1.8.0_192"
效果如图:
编辑 bin/service.bat 设置使用的JDK环境变量
set "JAVA_HOME=C:\Program Files\Java\jdk1.8.0_192"
set "JRE_HOME=C:\Program Files\Java\jre1.8.0_192"
效果如图:
编辑 bin/startup.bat ,第56行,从start改为run
这样设置后,运行tomcat后,日志就不会实时显示到tomcat运行窗口了,如果使用默认(每个tomcat进程都输出到tomcat窗口)的话,起多个tomcat进程后,之前的所有tomcat进程都会被挤掉。
call "%EXECUTABLE%" run %CMD_LINE_ARGS%
效果如图:
编辑 bin/catalina.bat 使日志保存在当天的日志文件中,而不是从始至终都保存在catalina.out里,造成该文件过大
在第359、362、366、369行添加如下内容
>> %CATALINA_HOME%\logs\catalina.%date:~0,4%-%date:~5,2%-%date:~8,2%.out
效果如图:
安装tomcat 服务作为系统进程,并添加标识 abc,建议作为系统进程
效果如图:
删除已作为系统进程的tomcat服务
某些情况下,不想作为系统进程开机自启动,或是标识名字写错了,删除重建是有必要的
说明一下tomcat的几个默认端口号:conf/server.xml
STARTUP:8080
DOWN:8005
AJP:8009 这个基本没用,可以把第116行注释掉
验证tomcat能否正常启动和访问
- 确保tomcat服务已启动,运行services.msc查找tomcat服务是否启动;
- 打开cmd,查看8080端口有没有在监听;
- 打开IE浏览器,访问http://127.0.0.1:8080/,能否出现tomcat首页
如果都正常,恭喜你,已经顺利完成了第1个tomcat站点的部署;
如果其中一项有问题的话,去logs目录下,查看日志,解决报错,重新启动
手动新建tomcat站点
创建程序目录,示例:webservert
以下操作全在windows上操作,不过全都以shell讲解。你应该懂得在windows上如何操作,从而达到shell的效果。
mkdir -p C:\opt\webapplication\webservert #网站程序根目录
mkdir -p C:\opt\share\webservert\temp
mkdir -p C:\opt\share\webservert\images
mkdir -p C:\opt\share\webservert\upload
mkdir -p C:\opt\share\webservert\download
mkdir -p C:\opt\share\webservert\other
创建tomcat目录,示例:abct
cp -R C:\usr\local\webserver\apache-tomcat-8.5.35 C:\usr\local\webserver\abct #tomcat程序目录
rm -rf C:\usr\local\webserver\abct\work\*
rm -rf C:\usr\local\webserver\abct\logs\*
rm -rf C:\usr\local\webserver\abct\webapps\*
mkdir -p C:\usr\local\webserver\abct\webapps\ROOT
echo "404" > C:\usr\local\webserver\abct\webapps\ROOT\404.html
echo "500" > C:\usr\local\webserver\abct\webapps\ROOT\500.html
修改conf/server.xml,更改STARTUP 端口号、DOWN 端口号
sed -i "s/8080/8082/g "C:\usr\local\webserver\abct\conf\server.xml
sed -i "s/8005/8007/g "C:\usr\local\webserver\abct\conf\server.xml
修改conf/server.xml,更改域名:示例:testt
把第161行的localhost该成你想要的域名:testt
效果如下:
修改conf/server.xml,修改程序目录:示例:webservert
效果如下:
如果没有这几行的话,请手动添加如下几行:
<Context path="" docBase="C:\opt\webapplication\webservert\" crossContext="true" privileged="true" reloadable="true" >
</Context>
<Context path="/images" docBase="C:\opt\share\webservert\images"></Context>
<Context path="/upload" docBase="C:\opt\share\webservert\upload"> </Context>
<Context path="/download" docBase="C:\opt\share\webservert\download"> </Context>
这里新创建的tomcat,使用的还是JDK1.8
如果想换其它版本的JDK的话,请参考上文修改相应的配置文件
把站点程序放置在站点根目录下
这里只创建1个首页html文件做测试
echo "abct" > C:\opt\webapplication\webservert\index.html
设置成系统服务
打开cmd 进入C:\usr\local\webserver\abct\bin下,参考上文
在系统服务中启动服务,并用IE浏览器访问
效果如下:
执行bat脚本创建新的站点
1.需要的软件及安装包如下
说明:git 客户端只有1个作用,用它的sed命令(替换功能),因为bat脚本的字符串替换相当复杂
2.把apache-tomcat-8.5.35-windows-x64.zip解压后的apache-tomcat-8.5.35文件夹剪切到C:\usr\local\webserver\下
否则下面的bat脚本会找不到源文件,效果如图:
3.执行建站脚本
create_tomcat8.bat testt abct webservert 8081 8006 C:\Program Files\Java\jdk1.8.0_192 C:\Program Files\Java\jre1.8.0_192
参数说明:
参数1:域名
参数2:tomcat目录名
参数3:程序目录名
参数4:UP端口
参数5:DOWN端口
参数6:JDK位置及版本
参数7:JRE位置及版本
create_tomcat8.bat 脚本内容:
@echo off
TITLE Create_tomcat8
SET TOMCAT_DEFAULT=apache-tomcat-8.5.35
SET LOCAL_URL=C:\usr\local\webserver
SET WEB_URL=C:\opt\webapplication
SET sed="C:\Program Files\Git\usr\bin\sed.exe"
SET DOMAIN=%1
SET TOMCAT_DIR=%2
SET CHENGXU_DIR=%3
SET UP_PORT=%4
SET DOWN_PORT=%5
SET JA_HOME=%6
SET JA_HOME2=%7
SET JR_HOME=%8
SET JR_HOME2=%9
MD %LOCAL_URL%\%TOMCAT_DIR%
MD %WEB_URL%\%CHENGXU_DIR%
MD C:\opt\share\%CHENGXU_DIR%\temp
MD C:\opt\share\%CHENGXU_DIR%\images
MD C:\opt\share\%CHENGXU_DIR%\upload
MD C:\opt\share\%CHENGXU_DIR%\download
MD C:\opt\share\%CHENGXU_DIR%\other
echo SET "JAVA_HOME=%JA_HOME% %JA_HOME2%" > C:\opt\share\jdk.txt
echo SET "JRE_HOME=%JR_HOME% %JR_HOME2%" >> C:\opt\share\jdk.txt
Xcopy /I /K %LOCAL_URL%\%TOMCAT_DEFAULT% %LOCAL_URL%\%TOMCAT_DIR% /s /e /y
DEL /Q /F /S %LOCAL_URL%\%TOMCAT_DIR%\work\*
RD /Q /S %LOCAL_URL%\%TOMCAT_DIR%\work
MD %LOCAL_URL%\%TOMCAT_DIR%\work
DEL /Q /F /S %LOCAL_URL%\%TOMCAT_DIR%\logs\*
RD /Q /S %LOCAL_URL%\%TOMCAT_DIR%\logs
MD %LOCAL_URL%\%TOMCAT_DIR%\logs
DEL /Q /F /S %LOCAL_URL%\%TOMCAT_DIR%\webapps\*
RD /Q /S %LOCAL_URL%\%TOMCAT_DIR%\webapps
MD %LOCAL_URL%\%TOMCAT_DIR%\webapps
MD %LOCAL_URL%\%TOMCAT_DIR%\webapps\ROOT
ECHO 404 > %LOCAL_URL%\%TOMCAT_DIR%\webapps\ROOT\404.html
ECHO 500 > %LOCAL_URL%\%TOMCAT_DIR%\webapps\ROOT\500.html
%sed% -i 's/8080/%UP_PORT%/g' %LOCAL_URL%/%TOMCAT_DIR%/conf/server.xml
%sed% -i 's/8005/%DOWN_PORT%/g' %LOCAL_URL%/%TOMCAT_DIR%/conf/server.xml
%sed% -i 's/test/%DOMAIN%/g' %LOCAL_URL%/%TOMCAT_DIR%/conf/server.xml
%sed% -i 's/webserver/%CHENGXU_DIR%/g' %LOCAL_URL%/%TOMCAT_DIR%/conf/server.xml
%sed% -i "24 r C:\opt\share\jdk.txt" %LOCAL_URL%/%TOMCAT_DIR%/bin/setclasspath.bat
%sed% -i "30 r C:\opt\share\jdk.txt" %LOCAL_URL%/%TOMCAT_DIR%/bin/service.bat
DEL /Q /F /S C:\opt\share\jdk.txt
CD %LOCAL_URL%\%TOMCAT_DIR%\bin
call service.bat install %DOMAIN%
4.把站点程序放置在站点根目录(我的程序目录是webservert)下
这里只创建1个首页html文件做测试
echo "abct" > C:\opt\webapplication\webservert\index.html
5.在系统服务中启动tomcat进程
在运行中执行services.msc,启动服务
6.打开浏览器访问http://127.0.0.1:8081测试
安装MySQL5.7.23
下载地址:http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.7/mysql-5.7.22-winx64.msi
安装MySQL5.7之前需要安装visual studio 2013 x64 redistributable。如果这个组件没装的话,图形界面安装MySQL5.7会提示你必须先安装这个组件
这个组件请自行百度并下载安装
双击运行mysql-5.7.22-winx64.msi
1. 安装界面是英文的,next即可
2. 安装类型有三种:Typical 典型的,Custom 自定义,Complete 完全的,因为MySQL自身并不大,我们这里选择Complete
3. 等待进度条走完,点击finish即可
默认安装路径:C:\Program Files\MySQL\MySQL Server 5.7
到此安装已经完成了,接下来进行初始化操作
以管理员身份运行cmd,依次执行下面语句:
1,cd C:\Program Files\MySQL\MySQL Server 5.7\bin
2,mysqld.exe -install
3,mysqld.exe --initialize-insecure
4,去【服务】里找到MySQL,右键启动
5,netstat -an 看有没有3306端口
6,mysqld.exe -uroot -p 空密码进去
7,允许3306端口通过防火墙