【发布时间】:2014-10-24 02:43:11
【问题描述】:
我只是按照这里的说明设置了我的 Yosemite mysql:
http://coolestguidesontheplanet.com/get-apache-mysql-php-phpmyadmin-working-osx-10-10-yosemite/
我尝试使用 mysqladmin 命令设置 root 的密码。结果是现在我可以用新密码或者不用密码登录mysql了。我认为这是因为一个 root 用户(root@localhost)没有密码,而另一个 root 用户有新密码。
我应该在这里删除任何 root 用户吗?我不明白为什么 localhost 和 macbook-pro.local 都存在 2 个 root 用户。
+------+-------------------+
| User | Host |
+------+-------------------+
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| | macbook-pro.local |
| root | macbook-pro.local |
+------+-------------------+
所以我通过添加密码字段得到了另一种表示:
mysql> select User,Host,password from mysql.user;
+------+-------------------+-------------------------------------------+
| User | Host | password |
+------+-------------------+-------------------------------------------+
| root | localhost | *xxx |
| root | macbook-pro.local | |
| root | 127.0.0.1 | |
| root | ::1 | |
| | localhost | |
| | macbook-pro.local | |
+------+-------------------+-------------------------------------------+
所以这让我明白有些用户的字符串是空的,我想毕竟没有重复。但是,我如何不让用户仅使用以下方式登录: mysql -u 根目录
【问题讨论】:
-
只需编辑每个用户的权限并设置密码