MySQL 日常|网站技术交流动态圈|科技专区|DP次元美化

MySQL 日常

写在前面

此贴作为一个长期贴,将记录我与 MySQL “相亲相爱” 的日常生活。因版本及时间原因,部分内容可能随着时间而失效,加之每个人的部署环境(系统版本、软件依赖、配置等)不一致,能够解决我的问题的,未必能够解决你的问题。所以呢,如果真遇到了,就遇到了再说吧(。・ω・。)。

本文不会特意更新,换句话说,这里出现的内容,至少都是我实际生产环境中遇到/涉及到的,因此自然无法和其它完善的教程相比,相当于是个“错题本”,方便查阅~

MySQL8.4 重置 root 密码

起因是迁移 waline 数据库的时候创建了新库,但是部署服务是在几天之后,然后想进数据库创建用户的时候发现密码忘了,也没有记在哪里,尝试了几个可能的密码都不对,就只能重置了。
  1. 停止 MySQL 服务

    systemctl stop mysqld
  2. 修改配置文件跳过认证

    # my.cnf
    vim /etc/my.cnf
    
    # 添加这行
    skip_grant_tables=1
  3. 启动 MySQL
    systemctl start mysqld

     

  4. 登录MySQL:此时可以直接回车进入,然后设置密码为空(加密,不能直接设置):

    mysql -uroot -p
    use mysql;
    update user set authentication_string='' where user='root';
    quit
  5. 修改配置文件,把加的那一行删掉或者注释掉,然后重启 MySQL。

    systemctl restart mysqld
  6. 退出之后重新登录,直接回车进入,然后修改密码:

    alter user 'root'@'localhost' identified by 'MySQL@2024';
还看到有一种情况改配置 `my.cnf` 是不生效的,可以看一下这个帖子的内容。
 
 
请登录后发表评论

    请登录后查看回复内容