Mysql8.0设置大小写不敏感解决方案

举报
yd_268751591 发表于 2022/10/13 17:46:13 2022/10/13
【摘要】 初始化Mysql8.0,修改Mysql8.0大小写敏感问题(默认敏感,改为不敏感)

一、备份Mysql数据库

  • 重新初始化mysql,相当于“恢复出厂设置”,所以一定要备份好重要的数据库,就是data目录下面的那些数据库文件;

二、停止Mysql服务

  • 在修改配置之前,请先把mysql服务停止,执行命令如下:
    systemctl stop mysql.service

三、删除错误日志

  • 为了方便查看 mysql 的错误日志,可以先将 /var/log/mysqld.log 删除。此处路径按照当前配置的路径来,命令如下:
    rm /var/log/mysqld.log

四、删除系统数据库与用户数据库

  • 将 mysql 数据库中的系统数据库和用户数据库都删除掉,执行下面命令:
  1. 查看 /var/lib/mysql 目录下面的内容
    image.png
  2. 递归删除 /var/lib/mysql 目录下面的内容
    root@ubuntu:/var/lib/mysql# rm -rf *

五、创建数据库目录

  • 上面将已存在的数据库目录 /var/lib/mysql 删除,下面将手动创建一个空目录且进行授权。命令如下:
  1. 手动创建一个mysql目录,就是刚刚删除的的mysql目录
    root@ubuntu:/var/lib# mkdir mysql
  2. 为 /var/lib/mysql 目录授权,设置目录的所属用户和所属组
    chown -R mysql:mysql mysql
  3. 查看目录详细信息,授权成功
    image.png

六、配置添加(重要!!!)

  • 如果需要区分大小写,需要在mysqld.cnf 中添加配置来忽略大小写,命令如下:
    root@ubuntu:/etc/mysql# vim ./mysql.conf.d/mysqld.cnf
    image.png
  • 命令输入后,添加如图配置,保存退出
    image.png

七、初始化Mysql

  • 执行如下命令初始化 mysql 数据库:
    mysqld --defaults-file=/etc/mysql/my.cnf --initialize --user=mysql --basedir=/var/lib/mysql --datadir=/var/lib/mysql

八、启动Mysql服务
systemctl start mysql.service

九、登陆Mysql客户端

  • 由于上面执行了 MySql 初始化操作,曾经的密码已经不能用了。MySQL 将在初始化过程中创建临时密码,临时密码存储在 /var/log/mysql/mysqld.log 中。
  1. 查找临时密码
  • 使用 cat 和 grep 命令配合查找,命令如下:
    cat /var/log/mysql/error.log
    image.png
  1. 使用临时密码登陆Mysql,依次输入下面命令:
    mysql -uroot -p
    fu,%K##nU9%c
    image.png
  2. 完成后可以下面命令退出Mysql:
    exit;
  3. 修改root用户密码(密码改成自己想要的,尽量复杂一点)
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';

十、查看Mysql8大小写敏感问题是否生效,需登陆Mysql。
mysql> show global variables like '%lower_case%';

image.png

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。