腾讯云:CentOS安装MySQL、JDK、Tomcat及web项目发布外网实战

0.435字数 1438阅读 1463

前言

准备一台云服务器

云服务器

  • linux版本:CentOS7.3 64位
  • 为方便测试,CentOS上的防火墙关闭,腾讯云上的安全组对服务器开通所有端口,用于测试web项目的本机也关闭防火墙。下面提到关于防火墙的操作均可跳过。
  • 以下操作全部在root账号下进行
  • 180.180.180.180作为假定的腾讯云服务器公网ip地址
  • 10.10.10.10作为假定的本机ip公网地址

一、安装MySQL

1、MySQL依赖libaio,所以先安装libaio
yum install libaio
2、检查MySQL是否已安装
yum list installed | grep mysql

如果已经安装的话,就卸载

yum -y remove mysql-libs.x86_64
3、下载MySQL Yum Repository(MySQL云仓库)
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
4、添加 MySQL Yum Repository 到你的系统 repository 列表中,执行
yum localinstall mysql-community-release-el7-5.noarch.rpm

需要输入y继续,提示“complete!”,则说明源添加成功。

5、选择要启动的MySQL版本
yum repolist all | grep mysql (查看mysql报告列表)

查看当前的启动的 MySQL 版本

yum repolist enabled | grep mysql
6、通过yum来安装MySQL
yum install mysql-community-server

安装的过程中需要输入y继续,提示提示“complete!”则安装成功。
使用whereis mysql 查看mysql的安装位置

7、启动或关闭MySQL

1) 启动MySQL Server

systemctl start mysqld

2) 查看MySQL Server状态

systemctl status mysqld

3) 关闭MySQL Server

systemctl stop mysqld

4) 重启MySQL Server

systemctl restart mysqld
8、防火墙设置(可关闭CentOS的防火墙)

远程访问 MySQL, 需开放默认端口号 3306,对于centos 7以上的版本来说,iptables 已经毫无意思,那么我们就要要 firewall-cmd 防火墙 来设置mysql的安全

firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --permanent --zone=public --add-port=3306/udp
firewall-cmd --reload(使最新的防火墙规则生效)
9、MySQL安全设置

服务器启动后,可以执行

mysql_secure_installation

此时输入 root 原始密码(初始化安装的话为空),接下来,为了安全,MySQL 会提示你重置 root 密码,移除其他用户账号,禁用 root 远程登录,移除 test 数据库,重新加载 privilege 表格等,你只需输入 y 继续执行即可。(禁用 root 远程登录,输入n)

10、MySQL字符集以及不区分表名大小写设置

编辑my.cnf文件

vim /etc/my.cnf
#在[client]标签下,增加客户端的字符编码
[client]
default-character-set=utf8

#在[mysqld]标签下,增加服务器端的字符编码
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
#加上以下命令,使得linux下的MySQL不区分表名的大小写(0表示区分,默认为0)
lower_case_table_names=1

修改过my.cnf的配置文件务必重启MySQL数据库,使之生效。

11、用本机中的Navicat Premium客户端进行连接

由于刚安装好的MySQL,只允许本地登陆,登陆服务器中的MySQL中,执行以下命令中任意一条(将10.10.10.10修改为你本机ip)

GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.10.10.10' IDENTIFIED BY 'root' WITH GRANT OPTION;      #1 将10.10.10.10本机ip添加到权限列表中
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;      #2 或者直接运行此命令,允许所有远程进行连接

如果不知道本机ip的,打开百度首页,输入“ip”搜索,显示的“10.10.10.10”ip即为你在公网的ip地址,但是这个ip地址是动态分配的,如果变了的话,而MySQL又没有开通对root进行所有远程连接的权限,此时使用本机登陆MySQL就会报错。

运行完上述两条命令中的任意一条之后,务必执行

Mysql> flush privileges;

二、安装JDK

1、检查并卸载OpenJDK

检查系统是否自带了OpenJDK以及相关安装包,如果有的话则应先将其下载,检查命令:

java -version
rpm -qa | grep java

如果发现有安装好的OpenJDK以及安装包的话,那么首先依次执行卸载,卸载命令:

rpm -e --nodeps tzdata-java-2012c-1.el6.noarch
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.x86_64

或者使用以下命令进行卸载

rpm -qa | grep java | xargs rpm -e --nodeps
2、下载jdk 1.8 64位

jdk-8u144-linux-x64.tar.gz ,简主在进行jdk安装的时候,jdk最新版是8u144,各位可根据自己需要进行下载。

3、安装jdk

1) 解压安装
使用FileZilla Client将jdk上传至/usr/local/java下,cd至该目录,执行以下命令进行解压缩

tar -zxvf jdk-8u144-linux-x64.tar.gz

删除安装文件(也可不删)

rm -rf jdk-8u144-linux-x64.tar.gz

2) 配置环境变量
编辑/etc/profile文件

vim /etc/profile    

在文件尾部添加如下配置:

JAVA_HOME=/usr/local/java/jdk1.8.0_144
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

如下图所示(请忽略前面加#号的行数):

jdk1.8环境变脸配置

编辑完成后输入:wq或者:x!保存退出,最后一步就是通过source命令重新加载/etc/profile文件,使得修改后的内容在当前shell窗口有效:

source /etc/profile

3) 测试

java -version
jdk版本信息

正常显示jdk版本,即表示jdk安装成功。

三、安装Tomcat

1、下载tomcat

这里提供两个下载链接Tomcat7与Tomcat8(建议使用7,简主在测试8的时候,无法启动tomcat,忘各位朋友如有条件测试反馈,谢谢。)

将tomcat下载至/usr/local/tomcat

wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.16/bin/apache-tomcat-8.5.16.tar.gz
wget http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.79/bin/apache-tomcat-7.0.79.tar.gz
2、解压:这里简主以7为例
tar -zxvf apache-tomcat-7.0.79.tar.gz
3、启动:到tomcat下的bin目录下,执行
./startup.sh

如果显示权限不够的话,执行

chmod u+x *.sh
4、测试

如果以上都没有问题的话,此时,在本机浏览器中输入180.180.180.180:8080应该可以打开tomcat首页。

四、Web项目发布

1、打包:将本机需要部署的项目打成war包
2、上传:上传至tomcat下的webapps目录下
3、修改tomcat中server.xml
<!--修改8080端口为80 -->
 <Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" />
<!--在Host标签里面添加context标签  内容如下(这里以Hello项目为例) -->
 <Context path="" docBase="/usr/local/tomcat/apache-tomcat-7.0.79/webapps/Hello" reloadable="true" crossContext="true" />
4、测试

在本机浏览器中输入180.180.180.180即可访问到自己的项目。有关域名与ip绑定的扩展点请参照使用Tomcat+腾讯云主机把你的项目发布到外网上一文,写的很详细,简主因为域名还没有备案,所以在此不表了。

五、写在结尾

简主水平有限,如若各位简友在项目发布过程中有任何疑问和建议的,欢迎指正哈。ヾ(◍°∇°◍)ノ゙


参考资料

MySQL

JDK

Web发布

推荐阅读更多精彩内容