当前位置: 首页 > news >正文

Linux服务器部署JavaWeb后端项目

适用于:MVVM前后台分离开发、部署、域名配置

前端:Vue
后端:Spring Boot

这篇文章只讲后端部署,前端部署戳这里

目录

  • Step1:服务器上搭建后端所需环境
      • 1、更新服务器软件包
      • 2、安装JDK8
      • 3、安装MySQL
      • 4、登录MySQL
      • 5、修改MySQL配置文件
      • 6、重启MySQL
  • Step2:Spring Boot项目打Jar包
      • 1、jar包放在服务器自定义的目录下
            • `nohup java -jar packageName.jar` VS `java -jar packageName.jar`

Step1:服务器上搭建后端所需环境

1、更新服务器软件包

# centOS
sudo yum update
# Ubuntu
sudo apt-get update

2、安装JDK8

# centOS
sudo yum -y install java-1.8.0-openjdk*
# Ubuntu
sudo apt-get install openjdk-8-jdk

验证安装

java -versionopenjdk version "1.8.0_382"
OpenJDK Runtime Environment (build 1.8.0_382-8u382-ga-1~22.04.1-b05)
OpenJDK 64-Bit Server VM (build 25.382-b05, mixed mode)

3、安装MySQL

# centOS
wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server --nogpgcheck# Ubuntu
sudo apt-get install mysql-server

验证安装

# 注意大写 V
mysql -V# centOS
mysql  Ver 8.0.34 for Linux on x86_64 (MySQL Community Server - GPL)
# UbunTu
mysql  Ver 8.0.34-0ubuntu0.22.04.1 for Linux on x86_64 ((Ubuntu))

4、登录MySQL

先去查看默认用户名密码,用这个密码去登录

# 查看
sudo vi /etc/mysql/debian.cnf# 登录
mysql -u debian-sys-maint -p

在这里插入图片描述
密码为上面查到的密码

登录后,修改root密码

mysql> use mysql
# 查看用户的权限,是否是mysql_native_password,如果不是,则将auth_sock改为mysql_native_password
mysql> select Host,user,authentication_string,plugin from user;ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your password';

修改后exit退出,用root账号重新登录

mysql -u root -p

可以看到root权限密码已经修改
在这里插入图片描述

5、修改MySQL配置文件

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

找到
在这里插入图片描述
改为:

bind-address            = 0.0.0.0
mysqlx-bind-address     = 0.0.0.0

6、重启MySQL

service mysql restart

查看端口状态

netstat -an|grep 3306

在这里插入图片描述
发现3306端口是tcp6,这样会导致无法远程连接数据库

Tips:
远程连接数据库如果出现 1130 - Host XXX is not allowed to connect to this MySQL server 错误提示

1、登录MySQL,然后查看配置

mysql> use mysql;
mysql> select host from user where user='root';

在这里插入图片描述

2、可以看到是 localcost,修改配置

update user set host = '%' where user ='root';

3、使配置生效

flush privileges;

4、host设置了“%”后便可以允许远程访问,再次查看

在这里插入图片描述

然后关闭服务器防火墙

sudo systemctl stop ufw

这时候就可以远程连接数据库了

Step2:Spring Boot项目打Jar包

1、jar包放在服务器自定义的目录下

我这里是 /home/AAA_Projects/assessment/
在这里插入图片描述
执行

nohup java -jar packageName.jar &
nohup java -jar packageName.jar VS java -jar packageName.jar

nohup java -jar packageName.jarjava -jar packageName.jar 是两种在Unix和Linux系统中运行Java应用程序的方式,它们之间有一些重要的区别:

  1. 后台运行:

    • nohup java -jar packageName.jarnohup 命令用于在后台运行进程,并且不会受到终端关闭或断开连接的影响。这意味着当你关闭终端或注销时,Java应用程序仍然在运行。
    • java -jar packageName.jar:这只是在当前终端会话中启动Java应用程序,如果你关闭终端,应用程序也会终止。
  2. 输出重定向:

    • nohup java -jar packageName.jarnohup 默认将标准输出重定向到一个名为nohup.out的文件,这是为了捕获应用程序的输出,以便后续查看。你也可以使用> somefile.log来自定义输出文件。
    • java -jar packageName.jar:标准输出通常会在终端中显示,除非你手动重定向它,例如,java -jar packageName.jar > output.log
  3. 退出会话的影响:

    • nohup java -jar packageName.jar:这种方式可以在终端会话退出后继续运行,因此适合长时间运行的任务或后台服务。
    • java -jar packageName.jar:如果从终端启动应用程序,它将在终端会话退出时一同终止。

这时候Spring Boot后端项目部署就大功告成了!

http://www.lryc.cn/news/148818.html

相关文章:

  • 原生小程序 wxs 语法(详细)
  • MySQL中count(*)和count(1)和count(column)使用比较
  • python用 xlwings库对Excel进行 字体、边框设置、合并单元格, 版本转换等操作
  • Golang 中的 archive/zip 包详解(二):常用类型
  • Qt应用开发(基础篇)——错误提示框 QErrorMessage
  • HLS 后端示例
  • 实录分享 | Alluxio在AI/ML场景下的应用
  • Streamlit 讲解专栏(十二):数据可视化-图表绘制详解(下)
  • Dockerfile 使用教程
  • InnoDB的Buffer
  • 普洛斯常熟东南数据中心获LEED金级认证及IDCC绿色算力基础设施奖
  • RabbitMQ 启动及参数说明
  • Vite打包性能优化及填坑
  • JDBC使用了哪种设计模式
  • JVM-性能优化工具 MAT
  • Python Flask flasgger api文档[python/flask/flasgger]
  • k8s常见命令
  • Unity3d C#实现调取网络时间限制程序的体验时长的功能
  • 常静相伴:深度解析C++中的const与static关键字
  • Linux入门之进程信号|信号产生的方式
  • Unity中的数学基础——贝塞尔曲线
  • 大数据平台安全主要是指什么安全?如何保障?
  • Flutter的未来与趋势,23年还学吗?
  • RHCE——十三、Shell自动化运维编程基础
  • 深入理解AMBA总线协议(AXI总结篇)
  • 建立无需build的react单页面应用SPA框架(2)
  • C# char曲线控件
  • 远程访问本地jupyter notebook服务 - 无公网IP端口映射
  • flume系列之:记录一次消费大量Debezium数据,数据包含dml语句比较大,造成数据堆积在channel的解决方法
  • Could not find artifact com.pageOffice:pageOffice:pom:4.3.0.2 in aliyunmaven