Linux安装jdk、mysql、并部署Springboot项目
- 😜作 者:是江迪呀
- ✒️本文关键词:
Linux
、环境安装
、JDK安装
、MySQL
、MySQL安装
- ☀️每日 一言:
知行合一!
文章目录
- 一、前言
- 二、安装步骤
- 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
+端口号 就可以访问啦~。
三、总结:
以上就是安装JDK
、MySQL
并启动一个SpringBoot
项目的全部内容啦~
但是在实际开发中,操作的步骤会出入很大。比如部署SpringBoot
项目,不会是像我讲的这样,因为这样的方式太原始,效率太低,对于发版比较频繁的测试分支,这样搞那简直是噩梦,所以诞生了Jenkins
,或者是Docker
。
Jenkins
的详细部署全教程我已经写过了,连接在此:Jenkins安装+Springboot项目完整部署流程(超详细)
关于使用Docker
部署的,等我吃个50
个汉堡再说吧~
相关文章:
Linux安装jdk、mysql、并部署Springboot项目
😜作 者:是江迪呀✒️本文关键词:Linux、环境安装、JDK安装、MySQL、MySQL安装☀️每日 一言:知行合一! 文章目录 一、前言二、安装步骤2.1 安装JDK(1)创建文件夹(便于后…...
tomcat更改端口号和隐藏端口号
因为默认端口:8080不会自动隐藏,因此为了更显格调需要将其改为:80 进入tomcat的server文件 将其改为80,之后将tomcat重新启动即可 tomcat启动流程 [rootshang ~]# cd /usr/local/tomcat/apache-tomcat-8.5.92 [rootshang apache-tomcat-8.5.92]# cd b…...
生信分析Python实战练习 2 | 视频19
开源生信 Python教程 生信专用简明 Python 文字和视频教程 源码在:https://github.com/Tong-Chen/Bioinfo_course_python 目录 背景介绍 编程开篇为什么学习Python如何安装Python如何运行Python命令和脚本使用什么编辑器写Python脚本Python程序事例Python基本语法 数…...
wps设置其中几页为横版
问题:写文档的时候,有些表格列数太多,页面纵向显示内容不完整,可以给它改成横向显示。 将鼠标放在表格上一页的底部,点击‘插入-分页-下一页分节符’。 将鼠标放在表格页面的底部,点击‘插入-分页-下一页分…...
如何在Ubuntu 22.04上安装PHP 8.1并设置本地开发环境
引言 PHP是一种流行的服务器脚本语言,用于创建动态和交互式web页面。开始使用你选择的语言是学习编程的第一步。 本教程将指导您在Ubuntu上安装PHP 8.1,并通过命令行设置本地编程环境。您还将安装依赖管理器Composer,并通过运行脚本来测试您…...
wazuh安装与使用
目录 一、wazuh安装 二、wazuh使用 一、wazuh安装 下载:https://wazuh.com 可以直接安装OVA这个,然后导入到Linux中就可以使用了。 导入完毕后开启,使用远程连接工具进行连接,出现以下画面则成功了。 之后可以看一下图形化界面…...
Vue 3 常见面试题汇总
前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 前言 最近两年许多大厂都在实行“降本增效”、“优化组织架构”,然后“为社会输送了大量人才”,今年(2023ÿ…...
Docker是什么?详谈它的框架、使用场景、优势
作者:Insist-- 个人主页:insist--个人主页 作者会持续更新网络知识和python基础知识,期待你的关注 目录 一、什么是 Docker? 二、Docker 的架构 1、Docker客户端 2、Docker守护进程 3、Docker镜像 4、Docker容器 5、Docker…...
neo4j
UNWIND 将列表里的值展开 CREATE (N0:Person {name: Anders}) CREATE (N1:Person {name: Becky}) CREATE (N2:Person {name: Cesar}) CREATE (N3:Person {name: Dilshad}) CREATE (N4:Person {name: George}) CREATE (N5:Person {name: Filipa})CREATE (N0)-[:KNOWS]->(N3)…...
【项目 计网5】 4.15 TCP通信实现(服务器端)4.16 TCP通信实现(客户端)
文章目录 4.15 TCP通信实现(服务器端)4.16 TCP通信实现(客户端) 4.15 TCP通信实现(服务器端) // TCP 通信的服务器端// TCP 通信的服务器端 #include <stdio.h> #include <arpa/inet.h> #incl…...
windows可视化界面管理服务器上的env文件
需求:在 Windows 环境中通过可视化界面编辑位于 Linux 主机上的 env 文件的情况,我现在环境是windows环境,我的env文件在linux的192.168.20.124上,用户是op,密码是op,文件绝对路径是/home/op/compose/env …...
自然语言处理在智能客服和聊天机器人中的应用
文章目录 1. 引言2. NLP基础2.1 词法分析2.2 语法分析2.3 语义理解2.4 情感分析 3. 智能客服中的应用3.1 自动问答3.2 意图识别3.3 情感分析与情绪识别 4. 聊天机器人中的应用4.1 对话生成4.2 上下文理解 5. 技术原理与挑战5.1 语言模型5.2 数据质量和多样性5.3 上下文理解 6. …...
为什么不建议使用@Async注解创建线程
1 前言 在很久很久之前,我有一段痛苦的记忆。那种被故障所驱使的感觉,在我脑海里久久无法驱散。 原因无它,有小伙伴开启了线程池的暴力使用模式。没错,就是下面这篇文章。 夺命故障 ! 炸出了投资人! 我有必要简单的…...
更新Ubuntu18.04上的CUDA和GCC
问题: 有一台服务器的GPU是1080,有八张卡,已经好久没有人用了。cuda版本是10.1,我现在拿来复现一些论文的模型,经常遇到版本依赖问题,报错Driver is too old。所以要更新一下驱动。遇到的主要问题是gcc版本也太低了&am…...
算法通过村第6关【青铜】| 如何通过中序和后序遍历恢复二叉树
中序:3 4 8 6 7 5 2 1 10 9 11 15 13 14 12 后序:8 7 6 5 4 3 2 10 15 14 13 12 11 9 1 通过这两个遍历顺序恢复二叉树 首先我们知道中序遍历顺序左中右,后序遍历顺序左右中 第一步: 由后序遍历确定根结点为1 > 由中序遍历…...
高斯牛顿法和LM算法异同示例
LM(Levenberg-Marquardt)算法和高斯牛顿(Gauss-Newton)算法是两种用于非线性最小二乘问题的优化算法,它们也有一些相似之处: 迭代优化:LM算法和高斯牛顿算法都使用迭代的方式来优化参数值&#…...
奥威BI财务数据分析方案:只做老板想看的
奥威BI财务数据分析方案是一套从老板的视角出发,做老板想看的财务数据分析报表,帮助老板更好地了解公司的财务状况和经营绩效的综合性智能财务数据分析方案,可实现财务数据分析可视化、灵活自主性,随时为老板提供最为直观的财务数…...
opencv进阶19-基于opencv 决策树cv::ml::DTrees 实现demo示例
opencv 中创建决策树 cv::ml::DTrees类表示单个决策树或决策树集合,它是RTrees和 Boost的基类。 CART是二叉树,可用于分类或回归。对于分类,每个叶子节点都 标有类标签,多个叶子节点可能具有相同的标签。对于回归,每…...
Unity通过TCP/IP协议进行通信
uinty项目中需要与C编写的硬件进行通信,因此采用TCP/IP协议进行通信,主要实现了与服务器的连接、通信内容的发送以及断开连接等功能。 根据确定好的协议格式,编写需要发送的内容,将其转为字节流(byte[])通过…...
基于VuePress搭建知识库
我这边需要搭建一个运维知识库,将项目的方方面面记录下来,方便新手接手运维。 准备环境 Nginx 1.19.0VuePress 1.xMinio RELEASE.2022-02-16T00-35-27Zvuepress-theme-vdoing主题 安装VuePress 根据官网步骤即可 # 创建目录 mkdir vuepress-starter…...
odoo安装启动遇到的问题
问题:在第一次加载odoo配置文件的时候,启动失败 方法: 1、先检查odoo.conf的内容,尤其是路径 [options] ; This is the password that allows database operations: ; admin_passwd admin db_host 127.0.0.1 db_port 5432 d…...
【Flink】Flink提交流程
我们通常在学习的时候需要掌握大数据组件的原理以便更好的掌握这个大数据组件,Flink实际生产开发过程中最常见的就是提交到yarn上进行调度,模式使用的Per-Job模式,下面我们就给大家讲下Flink提交Per-Job任务到yarn上的流程,流程图…...
哪种英特尔实感设备适合您?
原文链接 https://www.intelrealsense.com/which-device-is-right-for-you/ 无论您是深度和跟踪硬件的新手,还是经验丰富的专业人士,确定我们提供的众多英特尔实感产品中哪些产品适合您的项目仍然是一项挑战。在这篇文章中,我们将讨论英特尔…...
C++11的四种强制类型转换
目录 语法格式 static_cast(静态转换) dynamic_cast(动态转换) const_cast(常量转换) reinterpret_cast(重解释) 语法格式 cast-name <typename> (expression) 其中cast-name为static_cast、dynamic_cast、const_cast 和 reinterpret_cast之一…...
分布式事务(4):两阶段提交协议与三阶段提交区别
1 两阶段提交协议 两阶段提交方案应用非常广泛,几乎所有商业OLTP数据库都支持XA协议。但是两阶段提交方案锁定资源时间长,对性能影响很大,基本不适合解决微服务事务问题。 缺点: 如果协调者宕机,参与者没有协调者指…...
React源码解析18(9)------ 实现多节点渲染【修改beginWork和completeWork】
摘要 目前,我们已经实现了单节点的,beginWork,completeWork,diff流程。但是对于多节点的情况,比如: <div><span></span><span></span> </div>这种情况,我们还没有处…...
【GUI】基于开关李雅普诺夫函数的非线性系统稳定(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Redis 缓存满了怎么办?
引言 Redis 缓存使用内存来保存数据,随着需要缓存的数据量越来越大,有限的缓存空间不可避免地会被写满。此时,应该怎么办?本篇文章接下来就来聊聊缓存满了之后的数据淘汰机制。 值得注意的是,在 Redis 中 过期策略 和…...
Grafana 安装配置教程
Grafana 安装配置教程 一、介绍二、Grafana 安装及配置2.1 下载2.2 安装2.2.1 windows安装 - 图形界面2.2.2 linux安装 - 安装脚本 三、Grafana的基本配置3.1 登录3.2 Grafana设置中文 四、grafana基本使用 一、介绍 Grafana是一个通用的可视化工具。对于Grafana而言࿰…...
【Linux】临界资源和临界区
目录 一、临界资源 二、如何实现对临界资源的互斥访问 1、互斥量 2、信号量 3、临界区 三、临界区 四、进程进入临界区的调度原则 一、临界资源 概念:临界资源是一次仅允许一个进程使用的共享资源,如全局变量等。 二、如何实现对临界资源的互斥访问 …...
中国定制家具网/seo算法培训
配置示例 server{ server_name aaa.com location /api { proxy_pass http://xxx.com/api; proxy_set_header Host $proxy_host; #$host } } 说明 在同一服务器的IIS 发布了xxx.com 站点和 yyy.com 站点 共有80端口。需要通过Header Host 来分别响应 在通过浏览器访问的情况下&a…...
为什么做网站结构优化/泉州seo培训
我将整理文章分享数据工作中的经验,因为业务内容上的差异,可能导致大家的理解不一致,无法体会到场景中的诸多特殊性,不过相信不断的沟通和交流,可以解决很多问题。前面我们分析了职场基本功、数据指标体系,…...
交城有做网站的吗/seo搜索引擎实训心得体会
SpringCloud中的OpenFeign的超时控制和日志增强 为什么要学这个?你不想面试的时候多装两个逼多拿两千块钱? 先回顾一下我们之前OpenFeign的基本使用SpringCloud中的OpenFeign以及与Feign的区别。 我们现在衍生一下,在实际生产环境中&#x…...
wordpress文章转移/做百度网站一年多少钱
方法:https://www.jianshu.com/p/7ee167911597...
无锡网站建设技术/从事网络销售都有哪些平台呢
更多精彩内容请光临 www.leonarding.com《Oracle 数据结构知多少(一)》一 概念篇这里呢我只是把Oracle逻辑结构和物理结构所涉及到的segment段 extent区 block块的概念和相互管理简要的说明一下。Segment段:Oracle内部常叫“段对象”,凡是分配存储空间…...
信阳高端网站建设/凡科建站
jQuery演示代码段可将QuickTime视频播放器动态插入您的网页。 这是带有最少控件的原始视频播放,如果要自定义,可以非常容易地在播放器对象中设置参数。 要使用该代码,请记住要更改视频的网址,并且您需要一个id为“ player”的div。…...