MySQL 的默认用户

MySQL 的默认用户

通过全新(但旧)安装 Ubuntu 和 MySQL,我发现我可以通过命令行客户端访问 MySQL 而无需输入任何用户或密码。

以 root 身份登录需要 root 密码。但如果登录时不指定用户(即,只需输入mysql在命令行中输入)登录,则不会要求我输入用户名和密码。

我已作为 进行登录stewart@localhost。不存在这样的用户mysql.user

该用户可以看到information_schema数据库。

为什么该用户存在?我以为 MySQL 用户与 OS 系统帐户是分开的。

答案1

MySQL 将未知用户名视为匿名用户,因此请检查用户表中用户名列中是否有空字符串的行。删除这些或设置密码将阻止无密码登录。

您可以使用 SELECT CURRENT_USER() 检查您是否以匿名用户身份连接。

相关内容