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

Ubuntu 20.04下MySQL 8.0切换数据库重复提示输入密码如何解决

问题根因
  • 首要原因:服务器重启后触发了MySQL客户端包的静默更新(对应你当前8.0.27版本的客户端行为变更),该版本调整了\r/connect指令的逻辑:如果初始登录时没有指定默认数据库,调用切换数据库的连接指令时会默认触发身份重新校验。
  • 次要原因:MySQL全局或用户级客户端配置被更新覆盖,或是shell层面给mysql命令配置了带-p参数的别名,导致所有连接相关操作都会触发密码提示。
解决步骤
  • 先排查shell别名:执行alias mysql查看输出是否包含-p参数,若存在,执行unalias mysql临时验证,确认问题消失后,删除~/.bashrc、~/.bash_aliases等配置文件中的对应别名规则即可。
  • 再排查MySQL客户端配置:执行mysql --print-defaults查看加载的默认参数,检查是否包含connect-expired-password、force-reconnect这类会触发重鉴权的参数,找到后从/etc/mysql/conf.d/目录下的配置文件、~/.my.cnf文件中删除对应参数即可。
  • 临时适配方案:初始登录时直接指定默认数据库,命令格式为mysql -u user -p 你的默认数据库名,后续使用\r切换其他数据库不会触发密码提示。
  • 永久免验证方案:在用户主目录下新建/编辑.my.cnf文件,添加以下内容:
[mysql]
user = 你的MySQL用户名
password = 你的MySQL登录密码
database = 常用默认数据库名

添加完成后执行chmod 600 ~/.my.cnf修改文件权限,必须设置为600权限,否则MySQL会出于安全考虑忽略该配置,后续直接执行mysql即可直接登录,切换数据库也不会弹出密码提示。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 15:06:06