修改php.ini后无法访问phpMyAdmin,恢复配置重启服务仍未解决
解决phpMyAdmin 1045 Access Denied错误(MAMP环境)
遇到这种修改php.ini后恢复默认仍无法访问phpMyAdmin的1045权限问题,别着急——大概率不是php.ini的锅,而是phpMyAdmin的配置同步或者MySQL用户权限的问题,咱们一步步排查:
第一步:核对phpMyAdmin的核心配置文件
先找到MAMP中phpMyAdmin的config.inc.php文件,Mac下一般路径是/Applications/MAMP/bin/phpMyAdmin/config.inc.php,Windows用户可以在MAMP安装目录的bin/phpMyAdmin里找到它。
打开后重点检查这几行配置:$cfg['Servers'][$i]['host'] = 'localhost'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'your_mysql_password'; $cfg['Servers'][$i]['port'] = '8889'; // MAMP默认MySQL端口是8889,不是3306确保
password和你MAMP设置的MySQL root密码一致(MAMP默认密码通常是root,如果之前改过要对应上),端口也要和MAMP偏好设置里的MySQL端口匹配。如果是socket连接,还要确认socket路径是否正确:$cfg['Servers'][$i]['socket'] = '/Applications/MAMP/tmp/mysql/mysql.sock';第二步:直接验证MySQL root账号的可用性
有时候phpMyAdmin报错是因为MySQL本身的root账号登录有问题,咱们直接在终端测试:- 打开MAMP的终端(或者系统终端),进入MAMP的MySQL二进制目录:
cd /Applications/MAMP/Library/bin/ - 用root账号登录MySQL:
./mysql -u root -p - 输入密码后如果能成功进入MySQL命令行(看到
mysql>提示符),说明账号密码没问题,回到第一步检查phpMyAdmin配置;如果登录失败,就得重置MySQL root密码:- 先停止MAMP的MySQL服务
- 在终端执行:
./mysqld_safe --skip-grant-tables & - 再次登录MySQL(这次不需要密码),执行SQL重置密码:
UPDATE mysql.user SET authentication_string=PASSWORD('new_root_password') WHERE User='root' AND Host='localhost'; FLUSH PRIVILEGES; - 退出MySQL,关闭刚才的安全模式进程,重启MAMP的MySQL服务,再把phpMyAdmin配置里的密码改成新密码
- 打开MAMP的终端(或者系统终端),进入MAMP的MySQL二进制目录:
第三步:清除浏览器缓存和会话
有时候浏览器保存了旧的phpMyAdmin登录会话,即使配置正确也会报错。清空浏览器的缓存、Cookie,然后重新打开phpMyAdmin页面试试。第四步:彻底重启MAMP服务
有时候单纯点击重启按钮可能没生效,建议先完全关闭MAMP(包括后台运行的进程),等待几秒后再重新启动,确保所有服务都加载了最新配置。
内容的提问来源于stack exchange,提问作者user9835275
相关产品推荐
相关产品推荐

