mysql重置密码

想在mac上练习下mysql,结果忘记了密码。好在运气很好 知乎第一篇就到了管用的方法。在此记录一下

知乎传送门

  1. 关闭mysql
    两种方法,
    第一种 sudo /usr/local/mysql/support-files/mysql.server stop
    第二种方法 系统偏好-->mysql-->Stop MySQL Server
  2. 进入目录
    cd /usr/local/mysql/bin
  3. 获取管理员权限
    sudo su
  4. 重启服务器
    ./mysqld_safe --skip-grant-tables &
  5. 重开一个终端
    快捷键 command+N
  6. 进入客户端
    终端输入 mysql
  7. 获取权限
    flush privileges;
  8. 修改密码
    set password for 'root'@'localhost'=password('新密码');

修改完毕

=====================================================
flush privileges;命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。简而言之就是可以将数据读取到内存中,以便立即生效。

你可能感兴趣的:(mysql重置密码)