前言:
我们知道在Linux环境下默认是区分大小写的,而MySQL在官方文档中明确表示了,一旦MySQL启动后,将无法再进行配置,只能进行重装,如果数据不重要倒是无所谓,但是如果有重要数据那是真的大坑。
如果启动之后再去更改/etc/my.cnf,那么重启MySQL就会出现如下错误:
Job for mysqld.service failed because the control process exited with
error code. See “systemctl status mysqld.service” and “journalctl -xe”
for details.
试过很多办法,最后的解决方案还是重装MySQL。欲哭无泪。。。
下面开始教大家干净的卸载MySQL。
一 、卸载MySQL
1.关闭MySQL
service mysqld stop
2.检查MySQL的状态
service mysqld status
如果是灰色的则MySQL成功关闭。
3.查看安装的mysql
4.卸载MySQL
rpm -ev mysql-8.0.17-3.module_el8.0.0+181+899d6349.x86_64 --nodeps
rpm -ev mysql-errmsg-8.0.17-3.module_el8.0.0+181+899d6349.x86_64 --nodeps
rpm -ev mysql-server-8.0.17-3.module_el8.0.0+181+899d6349.x86_64 --nodeps
rpm -ev mysql-common-8.0.17-3.module_el8.0.0+181+899d6349.x86_64 --nodeps
5.删除MySQL相关的目录
find / -name mysql
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql/mysql
rm -rf /var/log/mysql
rm -rf /usr/bin/mysql
rm -rf /usr/lib64/mysql
rm -rf /usr/share/selinux/packages/mysql
rm -rf /usr/share/mysql
6.删除my.cnf
rm -rf /etc/my.cnf
7.检查卸载情况
rpm -qa|grep -i mysql
如果为空就是卸载干净了。
二、安装MySQL
1.切换用户
通过以root用户或具有sudo特权的用户身份使用CentOS软件包管理器来安装MySQL 8.0服务器
sudo su
2.安装MySQL8
sudo dnf install @mysql
注意:我们这个时候MySQL已经安装好了,但是不要启动!不要启动!不要启动!
3.配置my.cnf
vim /etc/my.cnf
4.自动启动
sudo systemctl enable --now mysqld
5.启动MySQL
service mysqld start
首次启动需要十几秒,后面就是秒开秒关了。
然后检查一下是否启动成功。
service mysqld status
如果出现下图,说明启动成功。
6.进入MySQL
mysql -u root -p
首次进入不需要密码,直接Enter就好了。
7.修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '1qaz@wsx#Ed';
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
8.检查大小写敏感
进入mysql控制台之后会出现mysql>,这时我们就可以通过命令操作MySQL了。
show variables like '%lower%';
如果出现以下情况,那么恭喜你这次MySQL大小写敏感的配置就算成功完成了。
其中 lower_case_table_name = 1;就是大小写敏感的关键,如果是=0,那么就配置失败了,唯一办法只有重装MySQL,这个坑足足跳了一天才跳过去。
结论:
CentOS 8随MySQL 8.0一起发行,安装就像键入dnf install @mysql一样简单。但是往往简单就意味着容易猜坑,比如这个大小写敏感问题。
————————————————
版权声明:本文为CSDN博主「红叶Zz」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38817391/article/details/103510173