Linux安装jdk、mysql、并部署Springboot项目

news2024/12/23 9:46:56
  • 😜           :是江迪呀
  • ✒️本文关键词Linux环境安装JDK安装MySQLMySQL安装
  • ☀️每日   一言知行合一!

在这里插入图片描述

文章目录

  • 一、前言
  • 二、安装步骤
    • 2.1 安装`JDK`
      • (1)创建文件夹(便于后期管理)
      • (2)下载`tar`格式的JDK文件。下载地址:[JDK17下载](https://www.oracle.com/java/technologies/downloads/#java17)
      • (3)并将`tar`文件传输到`linux`服务器。上传文件到服务器有两种方式:
      • (4)加压`tar`文件
      • (5)删除`tar`文件
      • (6)获取当前解压目录
      • (7)设置全局配置
      • (8)重加载一下profile文件
      • (9)验证`JDK`是否安装成功
    • 2.2 安装MySQL
      • (1)下载`MySQL`文件
      • (2) 安装`MySQL`
      • (3)安装mysql服务器
      • (4)启动`MySQL`
      • (5)查看`MySQL`状态
      • (6)找到初始密码
      • (7)进入`MySQL`
      • (8)修改密码
      • (9)防止`MySQL`自动更新
      • (9)本地连接`MySQL`
    • 2.3 部署SpringBoot项目
      • (1)打包
      • (2)启动项目
      • (3)访问项目
  • 三、总结:

一、前言

在本篇文章中,我们将探索如何在Linux操作系统上安装JDK(Java Development Kit)和MySQL数据库,并最终部署一个基于Spring Boot框架开发的应用程序。JDK是Java编程语言的核心组件,而MySQL则是一个流行的开源关系型数据库管理系统。通过本指南,您将了解如何为您的开发环境配置这些关键工具,并将Spring Boot应用程序部署到Linux服务器上。

二、安装步骤

2.1 安装JDK

(1)创建文件夹(便于后期管理)

在/usr/local/下面创建java文件夹

mkdir /usr/local/java

(2)下载tar格式的JDK文件。下载地址:JDK17下载

(3)并将tar文件传输到linux服务器。上传文件到服务器有两种方式:

  • 通过Xftp上传:
    在这里插入图片描述
    这个软件收费,所以并不是所有的小伙伴都有条件。所以有下面的免费的方案二
  • 使用rz命令上传:
    在使用这个命令之前你必须确保linux已经安装了lrzsz,安装命令如下:
sudo apt-get update
sudo apt-get install lrzsz

然后敲出rz命令就可以上传文件了,上传文件的目录是当前目录:

rz

在这里插入图片描述

(4)加压tar文件

tar -zxvf 目标JDK

(5)删除tar文件

我们要过河拆桥,解压过后,为了避免占用不必要的空间,应当将tar文件删除,只保留解压后的文件,删除命令:

rm -rf 目标JDK.tar

(6)获取当前解压目录

pwd

(7)设置全局配置

进入全局配置文件命令:

vim /etc/profile

在这里插入图片描述
在文件的末尾添加JDK配置:

export JAVA_HOME=[JDK安装路径]
export CLASSPATH=.:$JAVA_HOME/lib/dt.:jar$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

保存并退出。
按下 Esc 键以确保您处于命令模式。

:wq

并按下 Enter 键,它会保存文件并退出Vi/Vim编辑器。

(8)重加载一下profile文件

source /etc/profile

(9)验证JDK是否安装成功

javac

输出下面的内容表示安装成功:
在这里插入图片描述

2.2 安装MySQL

(1)下载MySQL文件

下载安装MySql官方的Yum Repository(注意:在CentOS中默认安装有MariaDB,这个事MySQL的分支,但是为了需要,还是要在系统中,安装mysql,而且安装完之后可以直接覆盖掉MariaDB)

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

如果没有wget ,可以安装一下:

sudo yum -y install wget

使用上面的命令就直接下载了安装用的Yum Repository,然后就可以直接安装了。

(2) 安装MySQL

yum -y install mysql57-community-release-el7-10.noarch.rpm

(3)安装mysql服务器

yum -y install mysql-community-server

这可能会花费一点时间,安装完成之后就会覆盖掉之前mariaDB
如果在安装过程中出现以下错误提示:

Failing package is: mysql-community-client-5.7.40-1.el7.x86_64  
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

则需要禁掉GPG验证检查:

yum -y install mysql-community-server --nogpgcheck

(4)启动MySQL

systemctl start mysqld.service

(5)查看MySQL状态

systemctl status mysqld.service	

展示下面的内容表示,MySQL启动成功:
**加粗样式**
可能会出现的问题:启动和查看MySQL状态使用的命令无效。这样可能是因为Linux的版本太低,不支持,(4)和(5)命令仅在CentOS7以及更高版本支持。

(6)找到初始密码

可以通过下面的命令找到初始密码

cd /var/log // 进入log文件夹
ll|grep mysqld.log
cat mysqld.log|grep password

下面显示的就是原始密码:
在这里插入图片描述

(7)进入MySQL

找到mysql初始密码后,进入mysql 命令:

mysql -uroot -p 

Enter然后输入密码。

(8)修改密码

alter user ‘root’@’localhost‘ identified by ’新密码‘

如果你修改的密码过于简单,是不被允许的,如果你比较叛逆,非要简单的密码,你可以除这个限制:

mysql>set global validate_password_policy=0;
musql>set global validate_password_length=1;

(9)防止MySQL自动更新

因为安装了Yum Repository,以后每次Yum操作都会自动更新,所以需要卸载,命令:

yum -y remove mysql57-community-release-el7-10.noarch

(9)本地连接MySQL

  • 确保你可以开了3306端口。开通端口命令如下:
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --list-all
  • 修改权限,允许远程链接数据库。
GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;

刷新权限

flush privileges 

我上面设置的全部IP在知道账号密码的前提下都能够连接,不太安全,你可以开放指定的IP:

GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'指定的IP' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;

2.3 部署SpringBoot项目

假设你一个项目已经写好,万事俱备,只欠部署!我这里展示下最原始的部署方式:

(1)打包

找到maven
在这里插入图片描述
打包:
在这里插入图片描述
在这里插入图片描述
jar包上传到服务器,上传的方式和JDK一样。

(2)启动项目

nohup java -jar 项目名称 >日志文件名.log 2>&1 &

上面的命令是后台启动并将日志文件输出到指定文件夹。

(3)访问项目

在浏览器输入服务器IP+端口号 就可以访问啦~。

三、总结:

以上就是安装JDKMySQL并启动一个SpringBoot项目的全部内容啦~

但是在实际开发中,操作的步骤会出入很大。比如部署SpringBoot项目,不会是像我讲的这样,因为这样的方式太原始,效率太低,对于发版比较频繁的测试分支,这样搞那简直是噩梦,所以诞生了Jenkins,或者是Docker

Jenkins的详细部署全教程我已经写过了,连接在此:Jenkins安装+Springboot项目完整部署流程(超详细)

关于使用Docker部署的,等我吃个50个汉堡再说吧~

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

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

相关文章

2828. 判别首字母缩略词

2828. 判别首字母缩略词 C代码1&#xff1a; bool isAcronym(char ** words, int wordsSize, char * s){if (wordsSize ! strlen(s)) {return false;} for (int i 0; i < wordsSize; i) { // 遍历所有&#xff0c;没有不满足的就是满足的if (words[i][0] ! s[i]) {return…

【C语言进阶(5)】指针笔试题(带图分析)

文章目录 笔试题 1笔试题 2笔试题 3笔试题 4笔试题 5笔试题 6笔试题7笔试题 8 分析下面代码的结果为何是这样 笔试题 1 1. 笔试代码 int main() {int a[5] { 1, 2, 3, 4, 5 };int* ptr (int*)(&a 1);printf("%d,%d\n", *(a 1), *(ptr - 1));return 0; }2.…

一文速学-让神经网络不再神秘,一天速学神经网络基础(一)

前言 思索了很久到底要不要出深度学习内容&#xff0c;毕竟在数学建模专栏里边的机器学习内容还有一大半算法没有更新&#xff0c;很多坑都没有填满&#xff0c;而且现在深度学习的文章和学习课程都十分的多&#xff0c;我考虑了很久决定还是得出神经网络系列文章&#xff0c;…

这才是教室巡课正确的打开方式,你做的太Low了!

随着教育领域不断演变和技术的不断进步&#xff0c;在线巡课系统正在逐渐引起人们的关注。通过实时观察教师的课堂教学&#xff0c;系统为教育管理者提供了窗口&#xff0c;使他们能够更深入地了解教学实践&#xff0c;从而更好地满足学生的学习需求。 在线巡课系统为教育管理者…

小梦C嘎嘎——启航篇】C++STL 中 list日常使用的接口介绍

小梦C嘎嘎——启航篇】CSTL 中 list日常使用的接口介绍&#x1f60e; 前言&#x1f64c;什么是list&#xff1f;常用的函数接口无参的构造函数接口拷贝构造接口赋值运算符重载 总结撒花&#x1f49e; &#x1f60e;博客昵称&#xff1a;博客小梦 &#x1f60a;最喜欢的座右铭&a…

Linux知识点 -- Linux多线程(三)

Linux知识点 – Linux多线程&#xff08;三&#xff09; 文章目录 Linux知识点 -- Linux多线程&#xff08;三&#xff09;一、线程同步1.概念理解2.条件变量3.使用条件变量进行线程同步 二、生产者消费者模型1.概念2.基于BlockingQueue的生产者消费者模型3.单生产者单消费者模…

如何创建「录取查询系统」?

随着高校招生规模的不断扩大&#xff0c;学校录取工作变得越来越繁琐。为了提高效率和准确性&#xff0c;许多学校开始采用电子化的录取查询系统。易查分作为一款功能强大的在线查询工具&#xff0c;可以帮助学校快速搭建自己的「录取查询系统」。 好消息&#xff01;博主给大家…

【C++代码】二分查找,移除元素

题目&#xff1a;二分查找 给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 题解 在升序数组 nums \textit{nums} nums …

Linux安装mysql ( ARM架构,rpm包)

下载对应的mysql 阿里源&#xff1a;阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 华为开源镜像站_软件开发服务_华为云 华为源&#xff1a; 华为开源镜像站_软件开发服务_华为云 选择华为鲲鹏镜像 https://repo.huaweicloud.com/kunpeng/yum/el/7/aarch64/ 下载mysql wg…

【3ds Max】练习——制作衣柜

目录 步骤 一、制作衣柜顶部 二、制作衣柜门板 三、制作衣柜底部 四、制作柜子腿部 五、制作柜子底板 步骤 一、制作衣柜顶部 1. 首先创建一个平面&#xff0c;然后将图片素材拖入平面 2. 平面大小和图片尺寸比例保持一致 3. 单机鼠标右键&#xff0c;选择对象属性 勾选…

简历考察点2_《CiCi-基于Vue3.0的智能音乐分享平台》

&#xff08;1&#xff09;项目初始化和推荐页面开发&#xff1a; 重点&#xff1a;轮播图、Scroll、下拉加载方法实现、 问题一&#xff1a;轮播图实现 ① 获取轮播图数据&#xff1a;虽然找到接口了&#xff0c;但是由于XHR请求在浏览器端会有跨域的限制&#xff0c;不能直…

8_分类算法-k近邻算法(KNN)

文章目录 1 KNN算法1.1 KNN算法原理1.2 KNN过程1.3 KNN三要素1.4 KNN分类预测规则1.5 KNN回归预测规则1.6 KNN算法实现方式&#xff08;重点&#xff09;1.7 k近邻算法优缺点 2 KD-Tree2.1 KD Tree构建方式2.2 KD Tree查找最近邻2.3 KNN参数说明 1 KNN算法 定义&#xff1a;如…

fineReport10问题笔记

1. word导出相关问题 1.1 导出文字为图片 fineReport技术文档 1&#xff09;文本控制 选中单元格&#xff0c;点击「单元格属性>样式>对齐」&#xff0c;文本控制设置有四种&#xff0c;分别为「自动换行、单行显示、单行显示&#xff08;调整字体&#xff09;、多行显…

AA实验是什么?

AA实验是什么&#xff1a;AA实验是在AB实验正式上线前做的分流均匀性检验&#xff0c;这个时候还没有正式上实验策略&#xff0c;只是为了检验两组的分流是否均匀先空跑一段时间。 AA实验的准备工作&#xff1a;这个时候要进行的工作是检查 两组分流是否均匀 、埋点是否正常 。…

精益求精:通付盾安卓应用加固升级,为移动安全保驾护航!

在如今竞争激烈的移动应用领域&#xff0c;保障应用资源的安全性成为刻不容缓的任务。最近&#xff0c;通付盾针对资源加密方案进行了全面升级&#xff0c;大幅增强了其兼容性&#xff0c;实现了更全面的资源文件类型保护。这次升级为移动应用的安全性和稳定性迈出了坚实的一步…

driver‘s license exam 2

机动车科目二内容 driver‘s license exam 1_spencer_tseng的博客-CSDN博客 driver‘s license exam 2_spencer_tseng的博客-CSDN博客 driver‘s license exam 3_spencer_tseng的博客-CSDN博客 driver‘s license exam 4_spencer_tseng的博客-CSDN博客 car indicator light…

跨平台图表:ChartDirector for .NET 7.1 Crack

什么是新的 ChartDirector for .NET 7.0 支持跨平台使用&#xff0c;但仅限于 .NET 6。这是因为在 .NET 7 中&#xff0c;Microsoft 停止了用于非 Windows 使用的 .NET 图形库 System.Drawing.Common。由于 ChartDirector for .NET 7.0 依赖于该库&#xff0c;因此它不再支持 .…

物通博联嵌入式数据采集网关采集传感器的数据上传到云端

在当今的物联网&#xff08;IoT&#xff09;时代&#xff0c;各种传感器广泛应用于各种工业领域。传感器数据采集是实现自动化生产的基础&#xff0c;可以为企业决策提供科学的数据支持&#xff0c;通过各类智能传感器采集传输终端&#xff0c;将采集的传感器数据实时传输到设备…

2048. 下一个更大的数值平衡数;1292. 元素和小于等于阈值的正方形的最大边长;2707. 字符串中的额外字符

2048. 下一个更大的数值平衡数 核心思想&#xff1a;枚举直接从n1开始枚举它是不是平衡数即可。 1292. 元素和小于等于阈值的正方形的最大边长 核心思想:枚举正方形的左上角优化。优化部分有两部分&#xff0c;第一部分是计算面积的优化&#xff0c;预先处理好g&#xff0c;让…

LVS集群 (NET模式搭建)

目录 一、集群概述 一、负载均衡技术类型 二、负载均衡实现方式 二、LVS集群结构 一、三层结构 二、架构对象 三、LVS工作模式 四、LVS负载均衡算法 一、静态负载均衡 二、动态负载均衡 五、ipvsadm命令详解 六、搭建实验流程 一、首先打开三台虚拟机 二、…