CentOS 8 如何安装java与mysql
在CentOS 8上安装Java和MySQL的步骤如下:
1. 安装 Java
1.1 安装 OpenJDK(推荐)
CentOS 8 默认的软件仓库提供了 OpenJDK 包,您可以直接使用 dnf
命令安装。
# 更新系统
sudo dnf update -y# 安装 OpenJDK 11(CentOS 8 默认提供的版本)
sudo dnf install java-11-openjdk-devel -y# 安装完毕后,验证安装的 Java 版本
java -version
如果您需要安装其他版本的 OpenJDK(例如 JDK 8 或 JDK 17),可以通过以下命令进行安装:
# 安装 OpenJDK 8
sudo dnf install java-1.8.0-openjdk-devel -y# 安装 OpenJDK 17
sudo dnf install java-17-openjdk-devel -y
1.2 设置默认 Java 版本
如果您的系统上安装了多个版本的 Java,您可以通过以下命令设置默认的 Java 版本。
# 列出所有安装的 Java 版本
sudo alternatives --config java
根据提示选择您需要的版本。
2. 安装 MySQL
2.1 安装 MySQL 8
CentOS 8 默认仓库中并不包含 MySQL 8,因此需要通过 MySQL 官方的 YUM 仓库来安装。
# 下载并安装 MySQL 官方 YUM 仓库
sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm -y# 安装 MySQL 服务器
sudo dnf install mysql-server -y# 启动 MySQL 服务并设置开机自启
sudo systemctl start mysqld
sudo systemctl enable mysqld# 检查 MySQL 服务是否启动
sudo systemctl status mysqld
2.2 配置 MySQL
在安装完成后,MySQL 会自动生成一个临时的 root 密码。可以通过以下命令查找这个密码:
# 获取临时 root 密码
sudo grep 'temporary password' /var/log/mysqld.log
然后,使用该临时密码登录 MySQL 并进行安全设置:
# 登录 MySQL
mysql -u root -p# 在提示符下输入临时密码# 运行 MySQL 安全设置脚本
mysql_secure_installation
按照提示,您可以设置新的 root 密码,移除匿名用户,禁止远程登录等。
2.3 测试 MySQL 安装
使用以下命令验证 MySQL 是否工作正常:
# 登录 MySQL
mysql -u root -p# 输入密码后,可以执行一些 SQL 语句验证
SHOW DATABASES;
3. 配置防火墙(可选)
如果您需要远程访问 MySQL,确保防火墙已允许 MySQL 端口(默认是 3306)。
# 开放 MySQL 默认端口
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent# 重新加载防火墙规则
sudo firewall-cmd --reload
现在,您的 CentOS 8 系统上应该已经成功安装了 Java 和 MySQL
mysql配置
innodb_flush_log_at_trx_commit
是 MySQL 中 InnoDB 存储引擎的一项关键配置参数,控制事务提交时日志的刷盘行为。它影响数据库的可靠性、数据安全性以及性能,通常在高并发或对数据安全性有特殊要求的应用场景中需要进行调整。
参数选项及含义
innodb_flush_log_at_trx_commit
参数有三个可选值:0
、1
和 2
。每个选项的设置在数据一致性、可靠性和性能之间进行了不同的权衡。
1. innodb_flush_log_at_trx_commit = 0
- 含义:事务提交时不将日志立即写入磁盘,仅仅把日志写入到日志缓冲区;而是每秒一次将日志缓冲区的内容写入到日志文件,并刷新到磁盘。
- 性能:性能最好,因为减少了 I/O 操作。
- 数据安全性:如果系统崩溃(如服务器断电、系统重启等),在崩溃前 1 秒内的事务数据可能会丢失。
- 适用场景:适用于数据安全要求较低的场景,或对性能有极高要求且可以容忍少量数据丢失的场景。
2. innodb_flush_log_at_trx_commit = 1
(默认值)
- 含义:每次事务提交时都会立即将日志缓冲区内容写入到日志文件,并刷新到磁盘。
- 性能:性能相对较低,因为每次事务提交都会执行一次磁盘 I/O 操作。
- 数据安全性:最高,系统崩溃时不会丢失已提交的事务数据。
- 适用场景:适用于数据安全性要求较高的场景,例如金融、银行等需要确保每一笔交易数据不丢失的应用。
3. innodb_flush_log_at_trx_commit = 2
- 含义:每次事务提交时会将日志缓冲区内容写入到日志文件,但不会立即将日志文件刷新到磁盘,而是每秒进行一次刷盘。
- 性能:比设置为
1
性能更高,因为减少了磁盘 I/O 次数。 - 数据安全性:如果系统崩溃,在崩溃前的 1 秒内可能会丢失事务日志数据,但已提交的事务数据通常不会丢失。
- 适用场景:适用于数据安全性要求中等的场景,可以容忍少量数据丢失,但仍需要较好的性能。
[mysqld]
basedir = /usr
datadir = /var/lib/mysql
port = 3306
socket = /var/lib/mysql/mysql.sock
log-error = /var/log/mysql/error.log
pid-file = /var/run/mysqld/mysqld.pid# 调优选项
max_connections = 200lower_case_table_names=2
#skip-grant-tables
bind-address = 0.0.0.0
# 谨慎选择,不记录binlog日志
skip-log-bin
binlog_format=STATEMENT
expire_logs_days=1
#slow_query_log = 1
#slow_query_log_file = /var/log/mysql/slow.log
#long_query_time = 2
#performance_schema = ON
innodb_flush_log_at_trx_commit=0
#innodb_buffer_pool_size=256M
相关文章:
CentOS 8 如何安装java与mysql
在CentOS 8上安装Java和MySQL的步骤如下: 1. 安装 Java 1.1 安装 OpenJDK(推荐) CentOS 8 默认的软件仓库提供了 OpenJDK 包,您可以直接使用 dnf 命令安装。 # 更新系统 sudo dnf update -y# 安装 OpenJDK 11(Cent…...
Go语言之路————go基本语法、数据类型、变量、常量、输出
Go语言之路————go基本语法、数据类型、变量、常量 前言一、基本语法知识二、数据类型三、常量四、变量五、作用域六、输入输出 前言 我是一名多年Java开发人员,因为工作需要现在要学习go语言,Go语言之路是一个系列,记录着我从0开始接触G…...

音视频入门基础:MPEG2-PS专题(7)——通过FFprobe显示PS流每个packet的信息
音视频入门基础:MPEG2-PS专题系列文章: 音视频入门基础:MPEG2-PS专题(1)——MPEG2-PS官方文档下载 音视频入门基础:MPEG2-PS专题(2)——使用FFmpeg命令生成ps文件 音视频入门基础…...

Docker安装和卸载(centos)
Docker安装和卸载 一,已安装Docker,卸载Docker 1.方法一 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine 如果出现以下提示就证明没卸载…...

YOLOv8从菜鸟到精通(二):YOLOv8数据标注以及模型训练
数据标注 前期准备 先打开Anaconda Navigator,点击Environment,再点击new(new是我下载anaconda的文件夹名称),然后点击创建 点击绿色按钮,并点击Open Terminal 输入labelimg便可打开它,labelimg是图像标注工具,在上篇…...

Winforms开发基础之非主线程操作UI控件的误区
前言 想象一下,你正在开发一个桌面应用程序,用户点击按钮后需要执行一个耗时操作。为了避免界面卡顿,你决定使用后台线程来处理任务。然而,当你在后台线程中尝试更新UI控件时,程序突然崩溃了。这是为什么呢࿱…...
Flutter中Get.snackbar和Get.dialog关闭冲突问题记录
背景: 在使用GetX框架时,同时使用了Get.snackbar提示框和Get.dialog加载框,当这两个widget同时存在时,Get.dialog加载框调用Get.back()无法正常关闭。 冲突解释: 之所以会产生冲突,是因为Get.snackbar在关…...
springcloudalibaba集成fegin报错ClassNotFoundException解决方案
集成fegin遇到问题: java.lang.ClassNotFoundException: com.netflix.config.CachedDynamicIntProperty 解决方案: 在pom文件中添加依赖 <dependency><groupId>com.netflix.archaius</groupId><artifactId>archaius-core</artifactId><versi…...

【HTML+CSS+JS+VUE】web前端教程-31-css3新特性
圆角 div{width: 100px;height: 100px;background-color: saddlebrown;border-radius: 5px;}阴影 div{width: 200px;height: 100px;background-color: saddlebrown;margin: 0 auto;box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.5);}...
力扣264. 丑数 II
给你一个整数 n ,请你找出并返回第 n 个 丑数 。丑数 就是质因子只包含 2、3 和 5 的正整数。 //用一个数组来保存第1到第n个丑数 //一个丑数必须是乘以较小的丑数的 2、3 或 5来得到。 //使用三路合并方法:L2、L3 和 L5三个指针遍历2、3、5倍的丑数序列…...
计算机网络之---TCP连接管理
TCP连接管理 TCP(传输控制协议)是面向连接的协议,在数据传输之前需要建立连接,在数据传输完成后需要断开连接。TCP连接的建立和断开都遵循特定的规则,分别称为三次握手(Three-Way Handshake)和四…...
《CPython Internals》阅读笔记:p118-p150
《CPython Internals》学习第 8 天,p118-p150 总结,总计 33 页。 一、技术总结 补充一些本人整理的关于 Context-Free Grammar(CFG) 的知识。 1.symbol(符号) A mathematical symbol is a figure or a combination of figures that is used to repre…...

C/C++ 数据结构与算法【排序】 常见7大排序详细解析【日常学习,考研必备】带图+详细代码
常见7种排序算法 冒泡排序(Bubble Sort)选择排序(Selection Sort)插入排序(Insertion Sort)希尔排序(Shell Sort)归并排序(Merge Sort)快速排序(…...

三只松鼠携手爱零食,社区零售新高峰拔地而起
合纵连横,这是当前零售行业发展的一个主旋律。从商超之王胖东来的全国调改,到社区零售正在进行的渠道变革,竞争的激烈和商业模式的升级令人目不暇接。 量贩零食赛道在过去一年就是如此,有杀伐,有并购,刀光…...

Java聊天小程序
拟设计一个基于 Java 技术的局域网在线聊天系统,实现客户端与服务器之间的实时通信。系统分为客户端和服务器端两类,客户端用于发送和接收消息,服务器端负责接收客户端请求并处理消息。客户端通过图形界面提供用户友好的操作界面,服务器端监听多个客户端的连接并管理消息通…...

Kibana操作ES基础
废话少说,开干!!!!!!!!!!!!截图更清晰,复制在下面 #库操作#创建索引【相当于数据库的库】 PUT /first_index#获…...

MYSQL8创建新用户报错:You have an error in your SQL syntax;check...
本文所用——MYSQL版本:8.0.25 baidu都是直接创建新用户并赋权,如下: GRANT ALL PRIVILEGES ON *.* TO 用户名% IDENTIFIED BY 密码 WITH GRANT OPTION;但是我用的MYSQL版本它就不行,会报错! 经查阅资料发现——MY…...

动漫周边商城系统|Java|SSM|VUE| 前后端分离
【技术栈】 1⃣️:架构: B/S、MVC 2⃣️:系统环境:Windowsh/Mac 3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7 4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库…...
Vue 3 Diff 算法受 `v-for` 循环中的 `key` 属性影响
Vue 3 的 Diff 算法会受到 v-for 循环中的 key 属性的影响,key 的选择直接关系到 Diff 算法的效率和最终的 DOM 更新结果。 key 的作用 在 Vue 中,key 是一种标识,它用于唯一标记每个虚拟 DOM 节点。Diff 算法会根据 key 判断新旧节点是否是…...

江科大STM32入门——看门狗笔记整理
wx:嵌入式工程师成长日记 (一)简介 WDG(Watchdog)看门狗看门狗可以监控程序的运行状态,当程序因为设计漏洞(无法预料)、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...

Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...

《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...