14.Spring程序部署-Linux部署

news2024/9/26 22:50:37

文章目录

  • 1. 打包项目
  • 2. linux中删除mariadb,下载mysql
  • 3. .yml配置文件
  • 4.xshell中部署项目
    • 1)首先先在Linux中创建一个新的文件夹
    • 2)进入刚创建的文件夹,并将刚打包好的.jar包文件拖进来
    • 3)进入Linux中的mysql,并建库建表
    • 4)启动程序
    • 5)Linux服务器一关,网页就无法访问了,改为后台启动
    • 6)启动了程序访问网站却依然访问不到原因 - 使用了新的端口号没启动他
  • 5.查看日志
    • 5.1跟踪日志
    • 5.2过滤日志
    • 5.3关闭服务/杀掉进程
      • 5.3.1查找进程
      • 5.3.2杀掉进程
      • 5.3.3重启服务

大家好,我是晓星航。今天为大家带来的是 Spring程序部署-Linux部署 相关的讲解!😀

1. 打包项目

在xml项目中添加打包的依赖:

image-20240408151942817

按照下图步骤点击即可打包.jar包

image-20240408152047313

打包成功如下图所示

image-20240409214500092

文件夹中展示

image-20240409214537532

2. linux中删除mariadb,下载mysql

删除mariadb

1.按照下图输入命令即可删除原来安装的mariadb

image-20240408154506609

这里输入删除命令无返回值是正常的,在linux中运行成功一般不返回结果,当有问题才会返回结果。

安装mysql

1.下载安装wget下载器

yum install -y wget

image-20240408161508734

看到下图圈中的地方表示wget已经安装成功了

image-20240408161329453

2.利用wget下载器下载 Mysql

安装mysql

image-20240408161550679

yum install mysql-server -y

image-20240408161642525

如果报错上述命令找不到package mysql-server,那么证明我们没安装mysql-server软件包

image-20240408161752997

此时我们通过命令重新安装一下即可

sudo yum repolist all | grep mysql

先用上述命令确认存储库是否已经安装,如果没返回结果就是没有安装,我们安装一下

sudo rpm -ivh --force mysql-community-release-el7-5.noarch.rpm

我们再使用这段linux命令安装mysql-server软件包

image-20240408162110340

通过第二个linux命令,我们就成功安装了mysql-server软件包

image-20240408162208113

此时我们使用 yum install mysql-server -y 便可正常安装mysql。

image-20240408160858174

提示出Complete表示已经成功安装mysql

3.设置用户名,并启动MySQL

设置用户名

chown -R root:root /var/lib/mysql

启动mysql服务

systemctl restart mysqld.service

这里需要等待一会,20min左右

进入mysql

mysql -uroot -p

此处不用输入密码直接回车,即可进入数据库

4.设置密码(也可以不设置,默认密码为空,直接回车即可登录)

启动数据库后,使用数据库,设置密码

使用数据库

use mysql;

回车,设置密码为123456,用户名为root

update user set password=password('123456') where user='root';

更新密码为123456

GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";

更新系统

flush privileges;

image-20240408170900698

image-20240408170909065

image-20240408170942902

参考以下文章,博主经过一天的奋战,最终通过下面文章安好了…

通过xshell在linux上安装mysql5.7(终极版) - 肖德子裕 - 博客园 (cnblogs.com)

3. .yml配置文件

image-20240409213420438

.xml配置依赖文件中加入这两个依赖即可实现轻松切换

image-20240409213219169

在application.yml中写上 @profile.name@ 即可实现我们能便捷在两个配置间相互切换

4.xshell中部署项目

1)首先先在Linux中创建一个新的文件夹

image-20240411192747560

2)进入刚创建的文件夹,并将刚打包好的.jar包文件拖进来

image-20240411193022491

image-20240411193011197

传输进来之后我们再ll以下,看我们的程序是否已经放进来了

image-20240411193149019

3)进入Linux中的mysql,并建库建表

image-20240411193617007

由于博主之前已经建过了,这里放以下表的结构

image-20240411193707221

image-20240411193715627

4)启动程序

java -jar 程序jar包

java -jar blog-0.0.1-SNAPSHOT.jar

image-20240411194312454

如果报了端口号错误,那么在代码的.yml包中修改一下端口号

image-20240411194434819

然后重新上传项目再次启动即可。

注:记得删除旧的错误项目使用

rm -rf 文件名

5)Linux服务器一关,网页就无法访问了,改为后台启动

nohup java -jar 程序jar包 &

nohup java -jar blog-0.0.1-SNAPSHOT.jar &

image-20240411211615853

下面的询问信息是将信息放置在 nohup.out 文件中,问我们是否忽略他,我们回车忽略即可

6)启动了程序访问网站却依然访问不到原因 - 使用了新的端口号没启动他

image-20240411195315347
  1. 查看防火墙状态发现我们没有 启动防火墙 systemctl start firewalld

    image-20240411195517011

  2. 启动防火墙后,再次查看防火墙状态 systemctl status firewalldimage-20240411195602654

  3. 开启我们需要启动的端口号 firewall-cmd --zone=public --add-port=9090/tcp --permanent 返回success表示启动成功

    image-20240411195839591

至此我们便成功了

额外的命令:

关闭指定端口 - firewall-cmd --zone=public --remove-port=9090/tcp --permanent

查看通过的端口 - firewall-cmd --zone=public --list-ports

关闭防火墙 - systemctl stop firewalld.service

查看指定端口 - netstat -anp | grep 4433

查看所有端口 - netstat -nultp

http://t.csdnimg.cn/1hh3w

通过上述博主的链接总结5.点内容

如果liunx中不能设置没用的话,直接在服务器上添加使用端口即可。

image-20240411210323122

终于在添加了9090端口号后,启动成功了

image-20240411210455077

5.查看日志

5.1跟踪日志

查看全部日志 - more 需要跟踪的日志
eg:more spring-blog.log

这时就不方便,我们想看最新的,就需要跟踪日志

tail -f 需要跟踪的日志

tail -f spring-blog.log

image-20240411210658908

这里我们的光标就不会停止,他会更随着日志移动

image-20240411210816542

可以发现,此时我们的日志是随着网站的操作而更新的,但是此时日志还是很多,我们只想看错误日志,按ctrl + c 结束跟踪日志

image-20240411211216312

5.2过滤日志

tail -f | grep "Exception"

那么此时就会跟踪错误信息

image-20240411211300378

或者 tail -f | grep "ERROR" 也可以跟踪错误日志

5.3关闭服务/杀掉进程

5.3.1查找进程

ps -ef|grep java

image-20240411212557515

前面就是我们的进程ID

5.3.2杀掉进程

如果有我们想关闭的进程,我们直接

kill -9 进程号

kill -9 14192 即可杀掉我们刚刚启动的spring项目进程 (kill - 9 意为暴力杀掉进程)

5.3.3重启服务

nohup java -jar 程序jar包 &

nohup java -jar blog-0.0.1-SNAPSHOT.jar &

ps -ef|grep java

感谢各位读者的阅读,本文章有任何错误都可以在评论区发表你们的意见,我会对文章进行改正的。如果本文章对你有帮助请动一动你们敏捷的小手点一点赞,你的每一次鼓励都是作者创作的动力哦!😘

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1988767.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Anaconda安装多个版本的Python并与Pycharm进行对接

1、参考链接 Anaconda安装使用教程解决多Python版本问题_anaconda安装多个python版本-CSDN博客 基于上面的一篇博客的提示,我做了尝试。并在Pycharm的对接上做了拓展。 2、首先安装Anaconda 这个比较简单,直接安装即可: 3、设置conda.exe的…

筑牢企业防线,打造高效员工行为管控体系!行为管控软件分享,老板的智慧之选!

商贾之道,在于治事有序,人心齐整。有言曰,防身立命,先固其本。企业之基,在于人心与秩序。 行为管控软件乃老板之智慧,企业之福音也!本文将以安企神行为管控软件为例,探讨如何借助这…

人工智能在肿瘤免疫微环境领域的研究进展|顶刊速递·24-08-07

小罗碎碎念 2024-08-07 今天这期推文的主题是——人工智能在肿瘤免疫微环境领域的研究进展。 第三、五、六篇文献在06-02的推文中介绍过,但是考虑到知识体系的完整性,同时方便大家补充这一部分的临床知识,所以再次把这三篇文章收纳进来。 我…

进程状态(三)----- linux 中具体的进程状态(下)

目录 前言1. T && t 状态2. X 与 Z 状态3. 孤儿进程 前言 继上一篇文章 进程状态(二)----- linux 中具体的进程状态(上) 介绍了 linux 系统中具体的 R、S、D 状态,而这篇文章继续介绍 linux 系统中剩下的三种…

【hbz分享】-springboot启动时做了哪些事情

spring启动类启动时的流程 先调用SpringApplication完成一系列初始化操作 先把启动类保存起来,就是带有main函数的那个类,把这个保存起来保存应用类型,是Servlet还是Ractive通过getSpringFactoriesInstances(BootstrapRegistryInitializer.…

<数据集>战斗机识别数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:7903张 标注数量(xml文件个数):7903 标注数量(txt文件个数):7903 标注类别数:43 标注类别名称:[F16, Mig31, F35, F18, SR71, A10, A400M, AG600, J20, F4, C17, Tor…

C语言程序设计之基础易错题锦集2

C语言程序设计之基础易错题锦集2 自加自减代码2_0_1运行结果2_0_1代码2_0_2运行结果2_0_2 问题2_1解答2_1 问题2_2结果2_2 问题2_3结果2_3 问题2_4结果2_4 问题2_5结果2_5 问题2_6结果2_6 自加自减 代码2_0_1 #include<stdio.h>main(){int a,b,c,d;abcd10;printf("…

【枚举 图论】2242. 节点序列的最大得分

本文涉及知识点 枚举 图论知识汇总 LeetCode 2242. 节点序列的最大得分 给你一个 n 个节点的 无向图 &#xff0c;节点编号为 0 到 n - 1 。 给你一个下标从 0 开始的整数数组 scores &#xff0c;其中 scores[i] 是第 i 个节点的分数。同时给你一个二维整数数组 edges &…

区分虚拟网卡和物理网卡

枚举注册表网卡信息 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}读取没一项的Characteristics、NetCfgInstanceId信息Characteristics & NCF_PHYSICAL 即为物理网卡 Characteristics值 类型值说明NCF_VIRTUAL0x01…

STM32L051K8U6-HAL-LED闪烁设计

HAL三步法&#xff1a; 1、配置下载线 2、配置晶振 3、配置时钟 注意&#xff1a;中断优先级&#xff08;这里防止HAL_Delay卡死&#xff0c;详细请看 http://t.csdnimg.cn/NQhQV&#xff09; 4、 配置灯引脚属性为输出模式。并设置标签为LED 生成代码&#xff1a;编写while里…

《关于触手 AI 图像合成算法的分析报告》

一、算法全周期行为分析 算法安全 信息内容安全&#xff1a;在图像生成过程中&#xff0c;需要确保所生成的图像内容不包含违法、有害、侵犯他人权益或违反道德规范的信息。例如&#xff0c;不能生成涉及暴力、色情、恐怖主义等内容的图像。信息源安全&#xff1a;对于输入的原…

警惕智能手机的“隐形眼”:如何保护我们的数字隐私堡垒

随着智能手机深入我们生活的方方面面&#xff0c;它变得无所不在&#xff0c;甚至无所不知。 但你是否意识到&#xff0c;你的手机可能正在悄无声息地“监听”你的一举一动&#xff1f; 从你的搜索习惯到日常对话&#xff0c;手机的个性化推荐系统正不断收集你的数据。 本文…

参考图片神器《PureRef》,带下载。

画画、建模或者做设计看参考时&#xff0c;是否经常为不能同时共存两个页面而苦恼。 今天就给大家推荐一个能解决这个问题得软件——PureRef 下载地址&#xff1a;PureRef 2.0汉化版 汉化版2.0 蓝奏云&#xff1a; https://wwz.lanzouq.com/iyUTy1zt2b4d 下面是一些软件快…

UWA Gears兼容性数据公开

UWA最新发布了无SDK性能分析工具 - UWA Gears。该工具能够实时监测应用的CPU和GPU性能&#xff0c;无需代码改动即可掌握性能动态。此外&#xff0c;Gears还能截取应用的渲染画面进行深度分析&#xff0c;帮助您快速找到性能瓶颈并进行精准优化。 本篇内容为开发者提供了Gears…

【LVS】防火墙标签解决轮询错误

实验&#xff1a; 测试&#xff1a; 实验&#xff1a; 两个服务端下载软件在重启httpd lvs 标记多端口 多端口自动识别 测试 防火墙标记解决轮回问题

关于IAR的ICF编程操作

最近有一个项目需要对ICF进行外部编程。两个工程引用相同的ICF&#xff0c;通过外部输入参数来区分内部的地址范围。通过相关资料的研究&#xff0c;cmake可以通过参数导入一个变量来就觉这个问题。后来参考IAR手册发现可以在IDE中定义. 例子&#xff1a; icf文件&#xff1a…

Java Kafka消费者组位移重设深度解析与实践

简介 在现代的分布式系统中&#xff0c;消息队列扮演着至关重要的角色。Apache Kafka&#xff0c;以其高吞吐量、高可靠性和优秀的容错性&#xff0c;成为了众多企业的首选消息系统。在使用Kafka过程中&#xff0c;消费者组位移的管理是一个常见且关键的议题。本文将深入探讨K…

Excel中的高效查找利器:VLOOKUP函数深度解析与应用实战

文章目录 前言一、VLOOKUP基础应用二、常见用法1.精确匹配2.近似匹配3.反向查找4.多条件查找5.屏蔽错误值6.关键字查找&#xff08;模糊查找&#xff09;7.文本数值混合查找8.去除空格查找 前言 VLOOKUP函数是Excel中用于在数据表中进行垂直查找的强大工具。它能根据用户指定的…

html+css+js网页设计 中国电信1个页面(带js)

htmlcssjs网页设计 中国电信1个页面&#xff08;带js&#xff09; 网页作品代码简单&#xff0c;可使用任意HTML编辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xf…

Android 文件上传与下载

在实际开发涉及文件上传不会自己写上传代码&#xff0c;一般 会集成第三网络库来做图片上传&#xff0c;比如android-async-http&#xff0c;okhttp等&#xff0c;另外还有七牛也提供 了下载和上传的API。 1.项目用到的图片上传的关键方法&#xff1a; 这里用到一个第三方的库…