CentOS 7 上安装 MySQL 8.0 教程

🌟 你好
欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍
🤖 洛可可白:个人主页
🔥 个人专栏:✅前端技术 ✅后端技术
🏠 个人博客:洛可可白博客
🐱 代码获取:bestwishes0203
📷 封面壁纸:洛可可白wallpaper

CentOS 7 上安装 MySQL 8.0 教程
- CentOS 7 上安装 MySQL 8.0 教程
- 一、安装前准备
- 1. 卸载 MariaDB
- 2. 检查依赖
- 二、安装 MySQL
- 1. 下载资源包
- 2. 解压
- 3. 重命名和创建存储数据文件夹
- 4. 设置用户组并赋权
- 5. 初始化 MySQL
- 6. 配置参数文件
- 7. 启动 MySQL
- 8. 设置软连接,并重启 MySQL
- 9. 登录并更改密码
- 10. 开放远程连接
- 11. 连接工具测试连接 MySQL
- 三、设置开机自启动(可选)
CentOS 7 上安装 MySQL 8.0 教程
在本教程中,我们将通过一系列步骤在 CentOS 7.6 系统上安装 MySQL 8.0.30 版本。这个过程包括了安装前的准备、下载 MySQL、配置和优化等步骤。
一、安装前准备
在开始安装之前,我们需要确保系统环境已经准备好。
1. 卸载 MariaDB
由于 MySQL 和 MariaDB 可能会有文件冲突,建议先卸载 MariaDB。
rpm -qa|grep mariadb
rpm -e --nodeps 文件名
rpm -qa|grep mariadb
2. 检查依赖
确保系统已安装 libaio 和 numactl。
rpm -qa|grep libaio
yum -y install libaiorpm -qa|grep numactl
yum -y install numactl
二、安装 MySQL
1. 下载资源包
你可以选择从官网下载或者使用 wget 在服务器上直接下载。

# 官网下载
MySQL官网下载地址: https://dev.mysql.com/downloads/mysql/# 使用wget下载
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.30-el7-x86_64.tar
2. 解压
将下载的安装包上传到 /usr/local/ 目录下,并解压。
cd /usr/local/
tar -xvf mysql-8.0.30-el7-x86_64.tar
tar -zxvf mysql-8.0.30-el7-x86_64.tar.gz
3. 重命名和创建存储数据文件夹
mv mysql-8.0.30-el7-x86_64/ mysql
mkdir mysql/data
4. 设置用户组并赋权
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql /usr/local/mysql/
chmod -R 755 /usr/local/mysql/
5. 初始化 MySQL
cd /usr/local/mysql/bin/
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
记下初始化过程中生成的临时密码。
6. 配置参数文件
编辑 /etc/my.cnf 文件,配置数据库字符集和其他参数。
vi /etc/my.cnf
添加或修改以下内容:
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
default-character-set = utf8mb4[mysql]
default-character-set = utf8mb4[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect = 'SET NAMES utf8mb4'
port = 3306
socket = /usr/local/mysql/data/mysql.sock
skip-external-locking
7. 启动 MySQL
/usr/local/mysql/support-files/mysql.server start
8. 设置软连接,并重启 MySQL
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
ln -s /usr/local/mysql/mysql.sock /var/mysql.sock
service mysql restart
9. 登录并更改密码
使用初始化时生成的临时密码登录 MySQL,并更改密码。
mysql -uroot -p
更改密码的命令:
alter user 'root'@'localhost' identified by '新密码';
10. 开放远程连接
如果需要远程连接 MySQL,更新用户权限并刷新。
use mysql;
update user set host = '%' where user = 'root';
flush privileges;
11. 连接工具测试连接 MySQL
确保 MySQL 服务运行正常,使用连接工具测试远程连接。
三、设置开机自启动(可选)
将 MySQL 服务设置为开机自启动。
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 345 mysqld on
重启系统以确认 MySQL 是否自启动。
reboot
ps -ef|grep mysql
通过以上步骤,你应该能够在 CentOS 7 上成功安装并配置 MySQL 8.0.30。确保在生产环境中根据实际需求调整配置参数。
如果对你有帮助,点赞👍、收藏💖、关注🔔是我更新的动力!👋🌟🚀
相关文章:
CentOS 7 上安装 MySQL 8.0 教程
🌟 你好 欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍 &#x…...
Chromium HTML5 新的 Input 类型url对应c++
一、Input 类型: url url 类型用于应该包含 URL 地址的输入域。 在提交表单时,会自动验证 url 域的值。 <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>test</title> </head> <body&g…...
java多线程编程(二)一一>线程安全问题, 单例模式, 解决程线程安全问题的措施
引言: 如果多线程环境下代码运行的结果是符合我们预期的,即在单线程环境应该的结果,则说这个程序是线程安全的 线程安全问题的原因: 一.操作系统的随机调度 : 二.多个线程修改同一个变量: 三.修改操作不是…...
Leetcode 213. 打家劫舍 II 动态规划
原题链接:Leetcode 213. 打家劫舍 II class Solution { public:int rob(vector<int>& nums) {int n nums.size();if (n 1)return nums[0];if (n 2)return max(nums[0], nums[1]);// 如果偷了第一家,就不能偷最后一家int dp[n - 1];dp[0] …...
就业市场变革:AI时代,我们将如何评估人才?
内容概要 在这个充满变革的时代,就业市场正被人工智能(AI)技术深刻改变。随着技术的进步,传统的人才评估方式逐渐显示出其局限性。例如,过去依赖于纸质简历和面试评估的方式在快速变化的环境中难以准确识别真实的人才…...
富格林:安全操作方式稳健出金
富格林认为,黄金一直是吸引投资者关注的投资产品之一,投资者不断踏入黄金投资交易市场。很多投资者都以为现货黄金投资是很容易实现出金获得丰厚利润,但是面对复杂的交易市场,不仅不能轻易实现安全获利出金,甚至可能还…...
早点包子店点餐的软件下载和点餐操作教程 佳易王餐饮点餐管理系统操作方法
一、概述 【软件试用版资源文件可以点文章最后卡片了解】 早点包子店点餐的软件下载和点餐操作教程 适合于早点早餐餐饮行业的软件,实现早点点餐,收银会员管理,库存统计,销售统计等一体化操作。 点餐的时候可以用手触摸点&…...
uniapp一键打包
1.先安装python环境, 2.复制这几个文件到uniapp项目里面 3.修改自己证书路径,配置文件路径什么的 4.在文件夹页面双击buildController.py或者cmd直接输入buildController.py 5.python报错,哪个依赖缺少安装哪个依赖 6.执行不动的话&…...
什么是ksqlDB?流处理世界里的新范式
在大数据技术快速迭代的今天,我们见证了数据处理范式的不断演进。从批处理到流处理,从复杂的编程框架到声明式API,技术在不断简化与进化。而ksqlDB的出现,为我们带来了一个全新的视角 - 它不仅仅是一个流处理引擎,更是重新定义了我们与实时数据交互的方式。 让我们重新认识流处…...
Vue.js组件开发
Vue.js 是一个流行的 JavaScript 框架,用于构建用户界面和单页应用程序。开发 Vue.js 组件是 Vue.js 开发的核心部分。下面是一些关于 Vue.js 组件开发的基本概念和示例。 1. 创建一个基本的 Vue 组件 <template><div><h1>{{ title }}</h1>…...
Oracle视频基础1.1.2练习
1.1.2 需求: 查询oracle组件和粒度大小, select component,granule_size from v$sga_dynamic_components;Oracle SGA 中组件和粒度大小查询详解 在 Oracle 数据库的内存结构中,SGA(System Global Area,系统全局区&am…...
Hadoop分布式文件系统架构和设计
Hadoop分布式文件系统架构和设计 引言Hadoop 分布式文件系统 (HDFS) 是一个设计用于在普通硬件上运行的分布式文件系统。它与现有的分布式文件系统有许多相似之处。然而,HDFS 与其他分布式文件系统的差异是显著的。HDFS具有高度的容错能力,并且设计用于在低成本硬件上部署。H…...
Prompt Engineering (Prompt工程)
2 prompt工程2大原则 2.1 给出清晰,详细的指令 策略1:使用分割符清晰的指示输出的不同部分,比如"",<>,<\tag>等分隔符 策略2:指定一个结构化的输出,比如json,html等格式 策略3:要…...
第十四课 Vue中的HTML及文本渲染
Vue中的HTML及文本渲染 HTML渲染 v-html指令可以在DOM中渲染新的子HTML DOM,Vue官方认为HTML渲染是不安全的,并不建议直接做HTML插入操作。 <div id"app"><div v-html"vals"></div></div><script>n…...
无人机救援系统简单解读
无人机救援系统简单解读 1. 源由2. 场景分析2.1 人员搜索2.2 紧急物资投送2.3 环境评估 3. 系统分解4. 初步总结5. 参考资料 1. 源由 最近,关于《Rapid Response UAV Post-Disaster Location Network Incorporating ML, Radio Control, and Global Positioning Sys…...
广西自闭症儿童寄宿学校:打造温馨成长的家
在广西这片美丽的土地上,有一群特殊的孩子,他们生活在自己的世界里,对外界的喧嚣似乎无动于衷,他们就是自闭症儿童。自闭症,这个看似遥远的词汇,却实实在在影响着许多家庭。幸运的是,在这片热土…...
python 查看服务器主机 IP 地址
import socket hostname socket.gethostname() ## 获取主机名 ip_address socket.gethostbyname(hostname) # 通过主机名获取 IP 地址 print(“服务器主机 IP 地址为:”, ip_address)...
应对市场变化与竞争对手挑战的策略
应对市场和竞争对手的变化需要企业具备敏锐的市场洞察力、灵活的战略调整能力、持续的创新意识、有效的资源配置等关键能力。敏锐的市场洞察力是企业能够及时捕捉市场趋势和竞争动态的基础,它不仅帮助企业预见潜在的机会和威胁,还能指导企业制定更具前瞻…...
CSS_定位_网页布局总结_元素的显示与隐藏
目录 目标 1. 定位 1.1 为什么需要定位 1.2 定位组成 1. 定位模式 2. 边偏移 1.3 静态定位 static(了解) 1.4 相对定位 relative(重要) 1.5 绝对定位 absolute(重要) 1.6 子绝父相的由来ÿ…...
内存映射区
存储映射区介绍 存储映射I/O (Memory-mapped I/O) 使一个磁盘文件与存储空间中的一个缓冲区相映射。从缓冲区中取数据,就相当于读文件中的相应字节;将数据写入缓冲区,则会将数据写入文件。这样,就可在不使用read和write函数的情况…...
VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...
mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
