首页 >数据库 >mysql教程 >如何在 macOS MAMP 上恢复已删除的 MySQL \'root\' 用户和密码?

如何在 macOS MAMP 上恢复已删除的 MySQL \'root\' 用户和密码?

Susan Sarandon
Susan Sarandon原创
2024-12-04 09:35:11998浏览

How Can I Recover My Deleted MySQL 'root' User and Password on macOS MAMP?

在 macOS 上恢复已删除的 MySQL 'root' 用户和密码

MAMP 用户可能会意外删除本地上的 'root' 用户MySQL 设置。如果没有额外的用户,重新获得 MySQL 的访问权限可能会很困难。这是适用于 macOS 的简单解决方案:

  1. 将 'skip-grant-tables' 添加到 my.cnf: 在 MAMP 的 MySQL 目录中找到 my.cnf 文件并添加将以下行添加到 [mysqld]部分:

    skip-grant-tables
  2. 重新启动MySQL:重新启动MAMP的MySQL服务。
  3. 无需密码连接到MySQL:在终端中,输入 mysql 并按回车键。您应该无需密码即可连接。
  4. 在 MySQL 中执行以下命令:

    DELETE FROM mysql.user 
    WHERE  user = 'root' 
        AND host = 'localhost';
    
    INSERT INTO mysql.user 
    SET user = 'root', 
     host = 'localhost', 
     password = Password('whatevernewpassword'), 
     Select_priv = 'y',
     Insert_priv = 'y',
     Update_priv = 'y',
     Delete_priv = 'y',
     Create_priv = 'y',
     Drop_priv = 'y',
     Reload_priv = 'y',
     Shutdown_priv = 'y',
     Process_priv = 'y',
     File_priv = 'y',
     Grant_priv = 'y',
     References_priv = 'y',
     Index_priv = 'y',
     Alter_priv = 'y',
     Show_db_priv = 'y',
     Super_priv = 'y',
     Create_tmp_table_priv = 'y',
     Lock_tables_priv = 'y',
     Execute_priv = 'y',
     Repl_slave_priv = 'y',
     Repl_client_priv = 'y',
     Create_view_priv = 'y',
     Show_view_priv = 'y',
     Create_routine_priv = 'y',
     Alter_routine_priv = 'y',
     Create_user_priv = 'y',
     Event_priv = 'y',
     Trigger_priv = 'y',
     Create_tablespace_priv = 'y';
  5. 退出 MySQL : 输入 exit 关闭 MySQL 提示符。
  6. 删除my.cnf 中的 'skip-grant-tables': 编辑 my.cnf 并删除 'skip-grant-tables' 行。
  7. 重新启动 MySQL: 重新启动 MAMP 的 MySQL 服务.

现在,您应该能够使用新的“root”密码登录 MySQL已指定。

以上是如何在 macOS MAMP 上恢复已删除的 MySQL \'root\' 用户和密码?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn