You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac系统下MyPhpAdmin访问MySQL 8.0.25提示root用户访问被拒绝

macOS下MySQL 8.0.25 root账户访问被拒解决方案

问题原因说明

你之前执行跳过授权表命令报错是因为MySQL默认禁止以root系统用户运行mysqld进程;执行mysql -u root时未加-p参数,默认尝试无密码登录,因此返回using password: NO的报错。

操作步骤

  • 第一步:停止当前运行的MySQL服务
    可打开系统设置找到MySQL面板,点击「Stop MySQL Server」,也可执行命令:
    sudo /usr/local/mysql/support-files/mysql.server stop
  • 第二步:以跳过授权表模式启动MySQL
    执行如下命令,指定以mysql系统用户运行,避免权限报错:
    sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables --user=mysql &
    执行后当前终端会输出启动日志,无需关闭,新开一个终端窗口执行后续操作。
  • 第三步:重置root账户密码
    新终端中执行命令直接登录MySQL:
    /usr/local/mysql/bin/mysql -u root
    进入MySQL命令行后依次执行以下语句,将语句中的你的新密码替换为你要设置的root密码:
    FLUSH PRIVILEGES;
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码';
    FLUSH PRIVILEGES;
    exit
    
    这里指定mysql_native_password密码插件是为了兼容MyPhpAdmin的登录验证逻辑。
  • 第四步:重启MySQL到正常运行模式
    先关闭跳过授权表运行的MySQL进程:
    sudo /usr/local/mysql/support-files/mysql.server stop
    再正常启动MySQL服务:
    sudo /usr/local/mysql/support-files/mysql.server start
  • 第五步:验证登录并更新MyPhpAdmin配置
    执行命令验证密码是否生效,输入刚才设置的密码后可正常进入MySQL即表示重置成功:
    /usr/local/mysql/bin/mysql -u root -p
    打开MyPhpAdmin的config.inc.php配置文件,找到对应主机的配置项,填入正确的账号密码即可:
    $cfg['Servers'][$i]['user'] = 'root';
    $cfg['Servers'][$i]['password'] = '你的新密码';
    

内容的提问来源于stack exchange,提问作者Amir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 14:36:04