目录
一、前言
二、版本要求
三、安装资料下载
四、开始安装
安装mysql数据库(先开始坑最多的)
安装tomcat
上传jdk
安装aapt工具
后续部署步骤
一、前言
这里公司加购一台服务器,这里记录一下部署的相关步骤。
后续公司人员直接参考这个就行。也会记录一些相应踩坑解决方案。
本章不记录yum、docker等其他安装方式,都用rpm包或者tar.gz的形式。因为公司大部分客户环境都处于内网状态。
二、版本要求
centOs版本要求:6(64位)
jdk版本:jdk8_161及以上
tomcat版本:tomcat8
三、安装资料下载
U盘挂载教程链接:linux复制u盘文件,挂载u盘 使用挂载U盘的方式的话,忽略下面所有的rz/sz命令,
直接在u盘的挂载目录拷贝到指定目录即可
cp -r u盘文件路径 服务器路径
四、开始安装
安装mysql数据库(先开始坑最多的)
1.下载mysql的rpm包(参考上述安装资料)
解压后分别得到两个文件:MySQL-client-5.6.36-1.el7.x86_64.rpm、MySQL-server-5.6.36-1.el7.x86_64.rpm
2.创建mysql文件夹
cd /usr/local/
mkdir mysql
ls -l
执行完成效果应该如下:
进入mysql文件夹
cd mysql
2.将rpm包上传至Linux(使用rz/sz方式)
rz
- 如果输入rz之后提示“rz: command not found” 则表示需要安装一下rz/sz传输工具。
- 需要安装rz则点击链接:Linux下安装rz/sz传输工具(内网环境选择编译安装方式)
- 如果刚安装完rz/sz的同学,这里要把目录切会到mysql:cd /usr/local/mysql
利用“rz”命令分别将两个mysql文件上传。
MySQL-client-5.6.36-1.el7.x86_64.rpm
MySQL-server-5.6.36-1.el7.x86_64.rpm
ls -l
如上传完成,效果应如下图。
3.安装
安装server
rpm -ivh MySQL-server-5.6.36-1.el7.x86_64.rpm
这里我提示如下错误
这里有两个错误。
我们先看“Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY”
原因:这是由于安装了旧版本的GPG keys造成的。
从 RPM 版本 4.1 开始,在安装或升级软件包时会检查软件包的签名。
解决办法:后面加上:--force --nodeps
rpm -ivh MySQL-server-5.6.36-1.el7.x86_64.rpm --force --nodeps
第二个错误就是需要支持2.17版本的GLIBC_,我们需要升级一下GLIBC_
我们查看本机现在支持的GLIBC_版本号分别是多少
strings /lib64/libc.so.6 |grep GLIBC_由此可见:我们这里最高支持2.12,所以我们需要升级glibc,从而支持2.17版本。
可参考我另一篇博客:Linux 解决报错"libc.so.6: version GLIBC_2.14 not found"
glibc2.17的版本参考上述安装资料,根据博客内解压步骤开始即可。
博客内是升级到2.14的,需要两个压缩包,这里升级到2.17仅需要一个。
博客内涉及到“glibc-ports-2.14”的操作自行可忽略,仅执行“glibc-2.14”的步骤。
升级完成后再次查看支持的GLIBC_版本号如下
这里再尝试安装一下看看
rpm -ivh MySQL-server-5.6.36-1.el7.x86_64.rpm --force --nodeps
又提示如下问题
这里看“version `GLIBCXX_3.4.15' not found”
大致意思就是需要3.4.15的gcc版本,但是我们没有,那看一下我们支持最高的是多少。
由此可见,本机最高支持的是3.4.13,所以这里需要升级一下。
升级步骤参考另一篇博客:
/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found
升级完成之后再尝试安装一下看看
rpm -ivh MySQL-server-5.6.36-1.el7.x86_64.rpm --force --nodeps
安装过程中提示如下错误
提示加载libraries出问题了,这里本人操作失误。
上述安装步骤已更改,跟着步骤不会犯这个错误。
修改完成之后再次尝试安装server又提示如下错误
原因:缺少共享库,64位上运行32位的软件需要安装32位库。
安装步骤参考另一篇博客:libstdc++.so.6: cannot open shared object file: No such file or directory
这回安装完成之后再尝试安装mysql
rpm -ivh MySQL-server-5.6.36-1.el7.x86_64.rpm --force --nodeps
出现下图表示安装server成功!
安装client
rpm -ivh MySQL-client-5.6.36-1.el7.x86_64.rpm
我这里还是提示“Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY”这个错误。
所以这里添加“ --force --nodeps”强制安装。如下:
rpm -ivh MySQL-client-5.6.36-1.el7.x86_64.rpm --force --nodeps
安装client成功
4.启动mysql
service mysql start
这里我提示如下错误
原因:未初始化数据库
执行一下如下初始化命令
mysql_install_db --user=mysql
再次执行启动mysql的指令
启动成功如下图
至此!mysql安装完成!
安装tomcat
1.下载tomcat的tar.gz包(参考上述安装资料)
解压后得到文件:apache-tomcat-8.5.38.tar.gz
2.上传解压tomcat
cd /usr/local/
rz
tar -zxvf apache-tomcat-8.5.38.tar.gz
ls -l
执行完成效果应该如下:
进入tomcat文件夹
cd apache-tomcat-8.5.38
2.删除自带项目
rm -rf webapps/*
3.配置https协议
上传证书:tomcat.keystore
mkdir key
cd key
rz
修改tomcat配置采用https协议
vim ../conf/server.xml
找到高亮的如下内容
点击键盘“i”进入编辑模式。
将上述内容修改为下列内容
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="800" minSpareThreads="100" maxQueueSize="100" useBodyEncodingForURI="true" URIEncoding="UTF-8" prestartminSpareThreads="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/usr/local/apache-tomcat-8.5.38/key/tomcat.keystore" keystorePass="密码" />
修改完成依次点击键盘: Esc : wq Enter
保存完成会退出编辑界面。
至此,tomcat安装完成!
上传jdk
1.下载jdk的tar.gz包(参考上述安装资料)
解压后得到文件:jdk-8u192-linux-x64.tar.gz
2.上传解压jdk
cd /usr/local/
rz
tar -zxvf jdk-8u192-linux-x64.tar.gz
ls -l
执行完成效果应该如下:
至此jdk安装完成!
安装aapt工具
注:俺公司项目用到这个工具,所以这里需要装。其他同学自行忽略。
移步另一篇博客:linux下载安装aapt工具
后续部署步骤
上面那些主要把该需要的软件环境都安装完成,接下来具体配置一下即可。
1.设置mysql密码(默认密码为空)
进入mysql
mysql -uroot -p
use mysql;
update user set password=password("新密码") where user="root";
flush privileges;
显示如下内容表示修改成功
2.开放3306跟443端口
vim /etc/sysconfig/iptables
添加如下两条内容
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
重启防火墙
service iptables restart
3.开启mysql远程访问
进入mysql操作界面
mysql -uroot -p
输入刚刚修改的密码
授权root用户可任意远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '数据库密码' WITH GRANT OPTION;
使修改生效
flush privileges;
退出mysql
exit;
用远程连接工具尝试连接mysql,这里以Navicat为例。
发现并连不上,这里我用的服务器是云服务器,需再去额外设置安全组。
在云服务器安全组的入方向添加一个3306的TCP即可!
这里顺便把需要用到的443端口也一并开了。
如果仍然连接不上,参考另一篇博客:远程连接mysql“Lost connection to MySQL server at 'waiting for initial communication packet', system err”
4.配置tomcat的jdk
进入tomcat目录
cd /usr/local/apache-tomcat-8.5.38
修改catalina.sh文件指向jdk地址
vim bin/catalina.sh
在开始的空白处添加如下两段内容
export JAVA_HOME=/usr/local/jdk1.8.0_192/
export JRE_HOME=/usr/local/jdk1.8.0_192/jre
修改setclasspath.sh文件指向jdk地址
vim bin/setclasspath.sh
同样添加上述两段相同内容。如下
5.导入项目sql
上传sql文件
cd /usr/local/apache-tomcat-8.5.38
mkdir sql && cd sql
rz
进入mysql界面
mysql -uroot -p
输入密码
创建数据库
create database 数据库名 DEFAULT CHARACTER SET utf8;
选择新创建的数据库
use 数据库名;
导入sql
source /usr/local/apache-tomcat-8.5.38/sql/文件名.sql;
显示如下内容表示正在导入,耐心等待。
导入完成,退出mysql
exit;
6.部署项目
进入tomcat的webapps目录
cd /usr/local/apache-tomcat-8.5.38/webapps
上传项目的war包
rz
启动tomcat
../bin/./startup.sh
这里出现一个小插曲,我远程访问tomcat项目时一直超时。
这里我先确认了一下443端口的问题,防火墙已开放,安全组已开放,tomcat启动正常无报错。
远程使用工具尝试访问443端口均超时,访问之前配置的3306就可以。这里确定是端口问题。
联系了一下天翼云客服才知道。说是他们服务器如果要用四个端口必须要备案。分别是:80、8080、443、8443
那这里就没办法,换个端口号了,具体流程不写了,其他阿里华为腾讯云服务器或者内网机器均不存在这个问题。
这里我就临时换成8888了。
7.设置mysql开机自启
一查看是否已经默认自启
chkconfig --list
如果已经列表中有mysql了。并且3、4、5均为on的话表示已经有自启服务了。
如果不是on的话,只需执行如下一条指令就行了。
chkconfig --level 345 mysql on
如果列表中没有mysql,则看下列步骤往下执行。
查找mysql.server位置
find / -name mysql.server
由此可见,我的在usr/share/mysql底下。
把这个文件拷贝到init.d文件夹下。
cp /usr/share/mysql/mysql.server /etc/init.d/mysql
赋予可执行文件权限
chmod +x /etc/init.d/mysql
添加mysql服务
chkconfig --add mysql
查看服务列表
chkconfig --list
跟上述的一样,如果3、4、5有一个不是on的话执行下列命令,反之忽略
chkconfig --level 345 mysql on
至此mysql自启已设置完成。
8.设置tomcat开机自启
进入tomcat目录
cd /usr/local/apache-tomcat-8.5.38
修改startup.sh文件
vim bin/startup.sh
添加如下内容
export JAVA_HOME=/usr/local/jdk1.8.0_192
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export PATH=$PATH:$JAVA_HOME/bin
export CATALINA_HOME=/usr/local/apache-tomcat-8.5.38
修改rc.local文件
vim /etc/rc.d/rc.local
添加如下内容
/usr/local/apache-tomcat-8.5.38/bin/startup.sh
10.设置完成,重启机器测试是否自启
重启命令
reboot
查看mysql是否启动
mysql -uroot -p
查看tomcat是否启动
ps -ef|grep tomcat
都启动正常,页面访问也没问题,搞定!完事