目录
安装的软件
- 虚拟机 VMware workstation 15
- 安装CentOS7
- 安装 Java 环境 JDK 8
- 安装 MySQL 8
- 安装 Xshell
- 安装 Xftp
- 相关软件请打开以下链接自取:
- 链接:https://pan.baidu.com/s/1OSbRRaOnVN67vSKdn9I5UQ?pwd=sbdf
提取码:sbdf - Xshell和Xftp直接去官网安装即可~
- 虚拟机我这儿就直接跳过了,如果有需要的小伙伴可以去看看其它博主的详细教程~
-
安装CentOS7
-
1、解压 CentOS7
2、将解压之后的文件导入 VM,运行即可
3、虚拟机设置
默认的网络配置是桥接模式,直接接入当前的网络环境,如果网络不稳定,IP 会变。
NAT,相当于在 Windows 系统中独立开辟一块新的网络空间,IP 地址固定不变的,无论是否接入外网,都可以访问 CentOS。
4、启动虚拟机,输入自己的用户名和密码
5、linux查询地址命令:ifconfig
-
安装jdk1、删除 CentOS 自带的 OpenJDK
2、通过 Xftp 将安装包拷贝到 CentOS 中
3、通过命令安装 JDK
rpm -ivh jdk-8u221-linux-x64.rpm
4、配环境变量
JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
5、让配置生效
source /etc/profile
安装mysql
1、通过 Xftp 将 MySQL 安装包拷贝到 Linux
2、通过以下命令解压缩
tar -xvf mysql-8.0.20-1.el7.x86_64.rpm- bundle.tar
3、查询是否有自带的数据库
rpm -qa | grep mariadb 4、删除自带的 mariadb(橘色部分为)
5、如果有自带的数据库的话通过以下命令进行删除(黄色部分为你查出来的数据库的名字)
nodeps表示进行强制删除
rpm -e mariadb-libs-5.5.44- 2.el7.centos.x86_64 --nodeps
6、安装命令行(common、libs、client、server)
rpm -ivh mysql-community-common-8.0.20- 1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-8.0.20- 1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-client-8.0.20- 1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-8.0.20- 1.el7.x86_64.rpm --nodeps --force
7、初始化 MySQL
mysqld --initialize
8、授权防火墙
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;
9、查看数据库的初始化密码
cat /var/log/mysqld.log | grep password
10、登录数据库
mysql -uroot -p
11、修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
在修改密码的时候你可能会遇到以下错误:
-
此时,我们需要使用以下命令设置数据库的全局配置:
set global validate_password_policy=0;
validate_password_policy有以下取值:
默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
如果还有问题,请参考以下博主的文章:
-
12、使用新密码登录
13、开启远程访问
create user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;
14、开放 3306 端口
firewall-cmd --zone=public --add- port=3306/tcp --permanent
systemctl restart firewalld.service firewall-cmd --reload
15、MySQL 安装默认使用美国的时区,北京时间比美国晚 8 小时
至此,mysql才算是完全配置好了,那现在你可以通过命令行讲你本地的数据库导入到虚拟机中set global time_zone='+8:00';
-
导入本地数据库文件?
1、创建自己的数据库
-
2、然后进入到刚刚创建的数据库里面
-
3、将自己本地的sql文件通过xftp拖到虚拟机中
-
4、使用以下命令,导入刚刚放进虚拟机中的sql脚本
-
其中/root/mysqlProject是我存放sql文件的文件夹,读者可以根据自己的存放位置进行修改
-
运行命令即可!
-
接下来,我们来部署Springboot项目
-
部署Springboot项目
-
1、IDEA 启动 Spring Boot ,将 Spring Boot 应用打成jar,通过命令行部署。
-
2、同样的,通过xftp将打好的jar包拖到虚拟机中你想要放入的文件中
-
3、进入虚拟机,通过命令进入到你存放jar包的文件中(我的项目是存放在javaProject中)
-
4、使用 java -jar jar包的名字 启动项目即可
-
另外,可能有些小伙伴会遇到后台运行一切正常,项目可以运行,但是就是接口无法打开的情况,这个时候可能是防火墙打开,阻止你项目的端口号外漏的原因,可以使用以下命令:
-
查看防火墙状态:
-
systemctl status firewalld
关闭防火墙:(暂时关闭,虚拟机重启后需要重新使用此命令关闭防火墙)
systemctl stop firewalld |
查看开放的端口:
firewall-cmd --query-port=8081/tcp
开放某个端口:
firewall-cmd --zone=public --add-port=8081/tcp --permanent
permanent表示永久开放的意思,可以不用加
关闭某个端口:
firewall-cmd --zone=public --remove-port=8081/tcp --permanent
记得在开放或关闭后重新加载防火墙:
firewall-cmd --reload
以上便是虚拟机上部署springboot项目的全教程,如有疑问请留言~