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

M1系统Anaconda虚拟环境中MySQL进程与权限问题求助

解决Anaconda虚拟环境中MySQL的三个常见问题

1. 启动提示mysqld_safe A mysqld process already exists,无法弹出查询终端

检查进程状态与位置

  • 执行以下命令查看所有mysqld相关进程,包含PID(进程ID)和安装路径:
    ps aux | grep mysqld
    
  • 输出中排除grep --color=auto mysqld这一行,剩下的就是正在运行的mysqld进程。

停止并重启进程

  • 先尝试用官方命令停止:
    mysql.server stop
    
  • 如果命令无效,直接通过PID杀进程:
    kill <查到的PID数字>
    
  • 再次执行ps aux | grep mysqld确认进程已停止(只剩grep相关行)。
  • 重新启动服务后,手动打开终端执行mysql -u root即可进入查询界面,无需等待自动弹出窗口。

2. mysql_secure_installation提示Error: Access denied for user 'root'@'localhost' (using password: YES)(未设置密码)

  • 先尝试无密码登录:执行mysql -u root -p,出现密码输入提示时直接按回车(不要输入任何内容),若能进入MySQL则继续下一步。
  • 若无法登录,先停掉所有mysqld进程(参考问题1的方法),然后启动跳过权限校验的服务:
    mysqld_safe --skip-grant-tables &
    
  • 新开终端执行mysql -u root直接登录,然后重置root的空密码:
    USE mysql;
    UPDATE user SET authentication_string = '' WHERE User = 'root';
    FLUSH PRIVILEGES;
    EXIT;
    
  • 停掉mysqld_safe进程,正常启动mysql.server start,再执行mysql_secure_installation,按提示设置新密码即可。

3. 执行mysqld --skip-grant报错

  • 核心问题:命令参数错误,且未确保原有进程已停止。正确操作步骤:
    1. 停掉所有正在运行的mysqld进程(参考问题1的ps和kill命令)。
    2. 激活你的Anaconda虚拟环境:
      conda activate <你的虚拟环境名称>
      
    3. 执行正确的跳过权限表命令:
      mysqld_safe --skip-grant-tables &
      
    4. 新开终端登录MySQL进行密码重置(参考问题2的SQL命令)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 17:22:46