CentOS卸载、安装MySQL8(yum操作)

删除MySQL

shell 复制代码
1、删除yum安装的mysql
yum remove  mysql mysql-server mysql-libs mysql-server
2、查询mysql相关文件目录
find / -name mysql(查询到的文件路径删除)
3、删除查询到的mysql路径
rm -rf 查询到的路径
4、查询安装的依赖
rpm -qa|grep mysql
5、删除掉查询的依赖
yum remove 依赖名称
6、删除mysql配置文件
rm /etc/my.cnf

3、查询系统中是否有以rpm包安装的mysql

shell 复制代码
rpm -qa | grep -i mysql

4、卸载以rpm包安装的mysql(如果没有查询到,这步不用执行)

复制代码
rpm -e rmp安装的mysql包名称

5、删除mysql服务

shell 复制代码
chkconfig --list | grep -i mysql
chkconfig --del mysql

6、mysql文件夹(其实删除yum安装目录里已经做过查询删除操作了,这里查漏补缺一下吧)

shell 复制代码
两个命令都可以查询到mysql都在哪些目录下存在
whereis mysql
find / -name mysql
---------------------
使用rm -rf 删除查询到的目录
记得删除my.cnf文件
rm -rf /usr/my.cnf

安装MySQL

1、安装依赖

shell 复制代码
yum install libaio wget -y

2、下载MySQL仓库文件

shell 复制代码
wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm
yum localinstall mysql80-community-release-el7-3.noarch.rpm

3、验证仓库是否添加成功

shell 复制代码
yum repolist enabled | grep "mysql.*-community.*"

4、安装MySQL

shell 复制代码
yum install mysql-community-server -y

可能会出现的错误,以及解决方法

shell 复制代码
错误1、
[root@centos mysql]# yum install mysql-community-server -y
Last metadata expiration check: 0:03:03 ago on Sun 08 May 2022 03:18:14 PM CST.
All matches were filtered out by modular filtering for argument: mysql-community-server
Error: Unable to find a match: mysql-community-server

错误1的解决方法:
执行:yum module disable mysql
再重新执行:yum install mysql-community-server -y

5、设置MySQL8大小写不敏感

建议在安装完成之后,初始化数据库之前修改,不然会比较麻烦

shell 复制代码
1、打开mysql配置文件
vim /etc/my.cnf

2、在文件末尾处添加一行
lower_case_table_names=1

6、执行rpm操作

shell 复制代码
rpm -qi mysql-community-server.x86_64 0:8.0.20-1.el7

7、查看MySQL的安装目录

shell 复制代码
whereis mysql

8、启动服务

shell 复制代码
# 启动mysql服务
systemctl start mysqld
# 开机自启动
systemctl enable mysqld

# 查看服务状态
systemctl status mysqld

9、查找初始密码

shell 复制代码
cat /var/log/mysqld.log | grep password

查询显示
2025-08-04T06:26:27.925329Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: -hk-b!kdS487

10、进入mysql

shell 复制代码
mysql -u root -p

输入获取到的初始密码进去mysql

11、修改密码

shell 复制代码
# 修改root用户密码,这里设置密码规则为mysql_native_password,是因为我的navicat版本比较低,8.0的规则不太适用。
alter user 'root'@'localhost' identified with mysql_native_password by 'AC@ac123456';

# navicat新版本,支持8.0密码规则,使用这个命令修改密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'AC@ac123456';

12、设置允许远程连接

shell 复制代码
# 登录到mysql数据库
use mysql;
# 同上,如果Navicat版本比较低,使用这个命令设置
create user 'root'@'%' identified with mysql_native_password by 'AC@ac123456';

# Navicat版本比较高使用这个命令
update user set host='%' where user='root';

# 刷新
flush privileges;

13、查询字符集

shell 复制代码
# 查看字符集,一般都是utf8mb4
status

至此MySQL卸载和安装的步骤就完成了,链接navicat测试一下能不能连接就可以了。

相关推荐
雪饼android之路10 小时前
【Android】 android suspend/resume总结(3)
android·linux
风跟我说过她10 小时前
Hadoop HA (高可用) 配置与操作指南
大数据·hadoop·分布式·zookeeper·centos
老黄编程10 小时前
ubuntu如何查看一个内核模块被什么模块依赖(内核模块信息常用命令)?
linux·运维·ubuntu
知北游天10 小时前
Linux网络:使用UDP实现网络通信(服务端&&客户端)
linux·网络·udp
半桔10 小时前
【网络编程】TCP 粘包处理:手动序列化反序列化与报头封装的完整方案
linux·网络·c++·网络协议·tcp/ip
Rinleren11 小时前
企业级 MySQL 8 全流程指南:源码编译安装、主从同步、延迟复制、半同步与 MHA 高可用搭建
adb
<但凡.11 小时前
Linux 修炼:进程控制(一)
linux·运维·服务器·bash
✎﹏赤子·墨筱晗♪12 小时前
Ansible Playbook 入门指南:从基础到实战
linux·服务器·ansible
乌萨奇也要立志学C++13 小时前
【Linux】进程概念(六):进程地址空间深度解析:虚拟地址与内存管理的奥秘
linux·运维
sz-lcw16 小时前
MySQL知识笔记
笔记·mysql·adb