MySQL 安装后 root 密码为空?安全设置与远程连接全指南
刚在 Ubuntu 上装好 MySQL,满心欢喜准备大展身手,却发现 root 用户居然不需要密码就能登录?这种"不设防"的状态让不少开发者心里发毛。别担心,这其实是 MySQL 在某些 Linux 发行版中的默认行为,今天我们就来彻底解决这个安全隐患,同时搞定远程连接配置,让你的数据库既安全又便捷。
1. 问题诊断:为什么 root 可以无密码登录
第一次在 Ubuntu 上安装 MySQL 后,你可能会惊讶地发现直接输入 mysql -uroot 就能进入数据库,完全不需要密码验证。这不是你的错觉,而是 MySQL 在某些 Linux 发行版中的特殊设计。
查看 /var/log/mysql/error.log,你会看到类似这样的警告信息:
[Warning] root@localhost is created with an empty password! Please consider switching off the...
深入分析 user 表会发现关键信息:
SELECT user, plugin, authentication_string FROM mysql.user WHERE user = 'root';
典型输出结果:
+------+-------------+-----------------------+
| user | plugin | authentication_string |
+------+-------------+-----------------------+
| root | auth_socket | |
+------+-------------+-----------------------+
这里的关键在于

&spm=1001.2101.3001.5002&articleId=95521147&d=1&t=3&u=86dfb84b95fe4fca9daffaba73e157d7)
3万+

被折叠的 条评论
为什么被折叠?



