今天当我使用这个命令检查 MySQL 5.7 时:
SELECT user,authentication_string,plugin,host FROM mysql.user;
但输出有 2 个 root 用户:
root *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 mysql_native_password localhost
mysql.session *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE mysql_native_password localhost
mysql.sys *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE mysql_native_password localhost
root *65EFA6253C9C6975BF9BB0EBD77170A04B321D39 mysql_native_password %
exporter *F2FBAC0B35510E7398C37EF11A7021EB76FB9D39 mysql_native_password localhost
为什么有2个root用户?什么可能导致这种情况?正常吗?我可以删除第一个 root 用户吗?
root@%
将允许从所有位置 (IP-s) 访问。root@localhost
只允许从本地主机访问。他们可能是两个不同的用户,有两个不同的密码和不同的访问权限。
查看手册了解更多信息:https ://dev.mysql.com/doc/refman/8.0/en/connection-access.html