最近按照团队考核要求在CenOS7上部署了本地的maven项目。查了很多博客,综合了很多信息,最终得以成功部署。想着以后肯定还会将项目部署于远程linux服务器上,就写下博客记录下其详细步骤,顺便也复习一下linux常用命令。
一.配置安全组,开放端口
开放3306MySQL数据库端口和8080Tomcat端口,设置SSH远程连接,开放端口80,然后由于我的项目中存在文件的上传,故开放FTP服务端口21.
云服务器ECS控制台 -> 实例 -> 管理 -> 本实例安全组 -> 配置规则
二.下载JDK、MySQL与Tomcat
1.下载安装JDK
查看本机是否自带java:rpm -qa|grep java
有则卸载:==rpm -e --nodeps java*
查看yum中jdk版本:yum search jdk
找到需要的jdk版本进行下载安装:yum install -y + jdk版本名
查看java版本信息:java -version
2.安装MySQL8.X版本并配置远程访问
2.1下载安装MySQL8.X
因为本地项目数据库使用的MySQL8.0.19版本,如果远程服务器使用MySQL5.X版本,那么在执行sql脚本文件时将会发生错误导致数据无法迁移。
1.配置MySQL 8.0的安装源:
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
2.安装MySQL 8.0:
sudo yum --enablerepo=mysql80-community install mysql-community-server
3.启动命令:sudo service mysqld start
查看运行状态:service mysqld status
4.查看临时密码:
grep “A temporary password” /var/log/mysqld.log
5.使用临时密码登录MySQL:mysql -uroot -p
6.修改密码命令:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘root’;
注:MySQL默认要求密码至少8位,含有大小写字母、数字和符号。
2.2配置远程访问
1.登录MySQL后使用mysql表:use mysql;
2.查看部分字段信息:
select host, user, authentication_string, plugin from user;
3.设置root账号访问权限:
CREATE USER ‘root’@’%’ IDENTIFIED BY ‘root’;
4.重新查看:
select host, user, authentication_string, plugin from user;
5.保存配置:GRANT ALL ON . TO ‘root’@’%’;
6.修改mysql8的加密方式:
ALTER USER ‘[用户名]’@’%’ IDENTIFIED WITH mysql_native_password BY ‘[密码]’;
3.安装Tomcat服务器
1.yum -y install tomcat
2.安装完成后使用cd命令进入该安装目录下的webapps文件夹
3.安装默认浏览器管理界面:
yum install tomcat-webapps tomcat-admin-webapps
4.相关tomcat命令:
systemctl stop tomcat.service 停止命令
systemctl restart tomcat.service 重启命令
systemctl enable tomcat 开机启动命令
systemctl start tomcat.service 启动命令
systemctl status tomcat 查看运行状态
安装结束后查看8080端口:
三.设置防火墙开启远程访问权限
查看对外开放的端口状态:
查询已开放的端口 netstat -anp
查询指定端口是否已开 firewall-cmd --query-port=端口/tcp
常用防火墙命令:
查看防火墙状态 systemctl status firewalld
开启防火墙 systemctl start firewalld
关闭防火墙 systemctl stop firewalld
开启防火墙 service firewalld start
对外开放端口:
添加指定需要开放的端口:
firewall-cmd --add-port=端口/tcp --permanent
重载入添加的端口:
firewall-cmd --reload
查询指定端口是否开启成功:
firewall-cmd --query-port=端口/tcp
移除指定端口:
firewall-cmd --permanent --remove-port=端口/tcp
成功后即可远程连接数据库与服务器了:
四.MySQL数据拷贝和项目部署
1.MySQL数据拷贝
直接利用SQLyog等图形化软件远程连接MySQL数据库,再生成本地数据库的sql脚本文件,最后在远程数据库上执行。
2.项目部署远端服务器
在IDEA中将本地maven项目打成war包,再利用Filezilla等远程文件传输工具,连接远程服务器,将war包paste在tomcat目录下的webapps文件夹里面。
最后输入项目路径进行访问登录: