Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)

目录

安装的软件

安装CentOS7

安装jdk

安装mysql

  如何导入本地数据库文件?

部署Springboot项目


安装的软件

  • 虚拟机 VMware workstation 15
  • 安装CentOS7
  • 安装 Java 环境 JDK 8
  • 安装 MySQL 8
  • 安装 Xshell
  • 安装 Xftp
  • Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第1张图片
  • 相关软件请打开以下链接自取:
  • 链接:https://pan.baidu.com/s/1OSbRRaOnVN67vSKdn9I5UQ?pwd=sbdf 
    提取码:sbdf
  • Xshell和Xftp直接去官网安装即可~
  • 虚拟机我这儿就直接跳过了,如果有需要的小伙伴可以去看看其它博主的详细教程~
  • 安装CentOS7

  • 1、解压 CentOS7

    2、将解压之后的文件导入  VM,运行即可

    3、虚拟机设置

    默认的网络配置是桥接模式,直接接入当前的网络环境,如果网络不稳定,IP 会变。

    NAT,相当于在 Windows 系统中独立开辟一块新的网络空间,IP 地址固定不变的,无论是否接入外网,都可以访问 CentOS

    Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第2张图片
    Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第3张图片

    4、启动虚拟机,输入自己的用户名和密码

    5、linux查询地址命令:ifconfig


  • 安装jdk

    1、删除 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、安装命令行(commonlibsclientserver)

    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,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

如果还有问题,请参考以下博主的文章:

http://t.csdnimg.cn/886Fa

  • 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

     

    15MySQL  安装默认使用美国的时区,北京时间比美国晚 8 小时

    set global time_zone='+8:00';

    至此,mysql才算是完全配置好了,那现在你可以通过命令行讲你本地的数据库导入到虚拟机中
  •   导入本地数据库文件?

    1、创建自己的数据库

  • 2、然后进入到刚刚创建的数据库里面

  • 3、将自己本地的sql文件通过xftp拖到虚拟机中

  • Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第4张图片

  • 4、使用以下命令,导入刚刚放进虚拟机中的sql脚本

  • 其中/root/mysqlProject是我存放sql文件的文件夹,读者可以根据自己的存放位置进行修改

  • 运行命令即可!

  • 接下来,我们来部署Springboot项目

  • 部署Springboot项目

  • 1、IDEA 启动 Spring Boot ,将 Spring Boot 应用打成jar,通过命令行部署。

  • 2、同样的,通过xftp将打好的jar包拖到虚拟机中你想要放入的文件中

  • 3、进入虚拟机,通过命令进入到你存放jar包的文件中(我的项目是存放在javaProject中)

  • 4、使用 java -jar jar包的名字 启动项目即可

  • Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第5张图片

  • 另外,可能有些小伙伴会遇到后台运行一切正常,项目可以运行,但是就是接口无法打开的情况,这个时候可能是防火墙打开,阻止你项目的端口号外漏的原因,可以使用以下命令:

  • 查看防火墙状态:

  • systemctl status firewalld

Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第6张图片

关闭防火墙:(暂时关闭,虚拟机重启后需要重新使用此命令关闭防火墙)

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

Linux下部署Springboot项目以及导入本地sql文件到虚拟机上的方法(详解版)_第7张图片

以上便是虚拟机上部署springboot项目的全教程,如有疑问请留言~

你可能感兴趣的:(linux,spring,boot,运维)