当前位置: 首页 > news >正文

CentOS 离线安装部署 MySQL 8详细教程

1、简介

MySQL是一个流行的开源关系型数据库管理系统(RDBMS),它基于SQL(Structured Query Language,结构化查询语言)进行操作。MySQL最初由瑞典的MySQL AB公司开发,后来被Sun Microsystems公司收购,最终成为甲骨文公司(Oracle Corporation)的一部分。

2、资源下载

2.1、查看 CentOS 版本

# 显示Linux标准基础(Linux Standard Base,LSB)的版本信息
lsb_release -a

2.2、下载 MySQL

MySQL 社区版下载链接

在这里插入图片描述

2.3、Oracle 帐户,方便下载

# 提醒:为了大伙的方便,请不要随便用该邮箱重新注册Oracle账号!
账号:yawoniu@163.com
密码:Oracle.123

2.4、卸载 MariaDB(按需操作)

# 停止 MariaDB 服务
systemctl stop mariadb# 卸载 MariaDB 服务
yum remove mariadb-server# 清理依赖包
yum list installed | grep mariadb
yum remove mariadb-libs# 删除配置文件和数据目录
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql# 清理残留文件
find / -name '*mysql*'# 验证卸载
yum list installed | grep mariadb

3、安装 MySQL

3.1、创建目录

# 创建 MySQL 工作目录
mkdir -p /usr/local/app/mysql

3.2、解压文件

# 上传 MySQL 安装包到指定文件并解压
tar xvf mysql-8.0.38-1.el7.x86_64.rpm-bundle.tar

3.3、安装 MySQL

# 安装 MySQL 软件包
# -i:安装软件包。
# -v:在安装过程中显示详细的输出信息。
# -h:显示安装进度条。
# *.rpm:通配符 * 表示匹配当前目录下所有以 .rpm 结尾的文件,表示要安装所有以 .rpm 结尾的软件包。
# --nodeps:在安装软件包时不检查依赖关系。这意味着即使软件包的依赖关系未满足,也会强制安装。
# --force:强制安装软件包,即使已经安装了相同版本的软件包。
# rpm -ivh *.rpm
#  --nodeps --force  最好不强制安装,查看一下以来,先删除已有mysql版本(包括mariadb)# 按顺序依次执行
rpm -ivh mysql-community-common-*.rpm
rpm -ivh mysql-community-client-plugins-*.rpm
rpm -ivh mysql-community-libs-*.rpm
rpm -ivh mysql-community-client-8*.rpm
rpm -ivh mysql-community-icu-data-files-*.rpm
rpm -ivh mysql-community-server-*.rpm# 缺少 openssl-devel,使用如下命令安装一下就可以了
yum install openssl-devel -y# 查看 MySQL 安装情况
systemctl status mysqld

3.4、配置 MySQL

# 编辑配置文件
vi /etc/my.cnf

复制以下内容

# 服务器唯一ID,默认是1
server-id=1# 启用二进制日志
log-bin=mysql-bin# 最大连接数 
max_connections=10000# 设置默认时区
default-time_zone='+8:00'# 0:区分大小写
# 1:不区分大小写
lower_case_table_names=1

3.5 开机自启动

# 启动 MySQL 服务
systemctl start mysqld# 停止 MySQL 服务
systemctl stop mysqld# 重启 MySQL 服务
systemctl restart mysqld# 设置开机自启动
systemctl enable mysqld# 验证自启动设置,如果服务已设置为自启动,该命令将输出 enabled
systemctl is-enabled mysqld# 查看服务状态
systemctl status mysqld# 禁用自启动(如果需要)
systemctl disable mysqld

3.6、更改加密规则

第一步,初始化登录密码,需要满足强密码要求的密码

# 拿到初始密码(若在my.cnf修改了路径,按my.cnf路径来)
grep password /var/log/mysqld.log# mysql 登录
mysql -u root -p# 登录后必须先改密码,否则其他操作无法进行,需要满足强密码要求的密码(密码改成自己的)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@ssw0rd!@##';# mysql 8.0.13以后的版本授权指令要分开执行
# 1、查看目前用户的 host
select user,host from mysql.user;
# 2、修改用户 host
update mysql.user set host='%' where user='root';
# 3、给予远程用户所有表所有权限
GRANT ALL ON *.* TO 'root'@'%' with grant option;# 远程访问(密码改成自己的)
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'P@ssw0rd!@##';# 刷新权限
flush privileges;

3.7、环境测试

在这里插入图片描述

本文教程到此结束,祝愿小伙伴们在编程之旅中能够愉快地探索、学习、成长!
http://www.lryc.cn/news/395125.html

相关文章:

  • 云计算【第一阶段(28)】DNS域名解析服务
  • pygame 音乐粒子特效
  • Leetcode 295.数据流的中位数
  • A59 STM32_HAL库函数 之 TIM扩展驱动 -- A -- 所有函数的介绍及使用
  • 【Unity】UGUI的基本介绍
  • MySQL 9.0新特性:向量存储
  • ruoyi实用性改造--(四)选择数据源及非标准使用数据库
  • HMI 的 UI 风格创造奇迹
  • 如何安全隐藏IP地址,防止网络攻击?
  • Windows10/11家庭版开启Hyper-V虚拟机功能详解
  • 202487读书笔记|《我有个拥抱,你要不要》——生活从来如此,你的态度赋予它意义
  • 使用tcpdump抓取本本机的所有icmp包
  • Nginx:负载均衡小专题
  • 新增多种图表类型,新增插件管理模块,DataEase开源数据可视化分析工具v2.8.0发布
  • android perfetto使用技巧梳理
  • bond网络配置文件中zone
  • spring事务详解
  • LIMS系统的核心功能有哪些
  • jenkins在使用pipeline时,为何没有方块形视图
  • Desktop docker 部署 WordPress
  • 简单的找到自己需要的flutter ui 模板
  • SpringBoot实现多数据源切换
  • VUE + 小程序 关于前端循环上传附件页面卡死的问题
  • 【基础算法总结】分治—归并
  • 基于Java+SpringMvc+Vue技术的实验室管理系统设计与实现(6000字以上论文参考)
  • 19_谷歌GoogLeNet(InceptionV1)深度学习图像分类算法
  • clickhouse高可用可拓展部署
  • QT中QDomDocument读写XML文件
  • sql盲注
  • 星网安全产品线成立 引领卫星互联网解决方案创新