mysql进入后准备赋外部访问权限,下面是附给所有用户root权限
grant all on *.* to root@'%' identified by '123456';
执行完报错
ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES)以前还好使来着,以前附过这个权限,因为新加的database外部看不到,只能看到以前的,所以我要重新附权限,是不是因为已经有这个权限了,才报上面的错?
grant all on *.* to root@'%' identified by '123456';
执行完报错
ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES)以前还好使来着,以前附过这个权限,因为新加的database外部看不到,只能看到以前的,所以我要重新附权限,是不是因为已经有这个权限了,才报上面的错?
这是因为mysql没有赋予你grant权限
mysql> use mysql
mysql> select grant_priv from user;
+------------+
| grant_priv |
+------------+
| N |
| N |
| N |
+------------+
3 rows in set (0.00 sec)
mysql> select grant_priv from user;
+------------+
| grant_priv |
+------------+
| Y |
| Y |
| Y |
+------------+
3 rows in set (0.00 sec)
mysql> update user set grant_priv = 'Y';
mysql> quit
#service mysqld restart#重启mysql
#mysql -u root -p
Enter password:
mysql> grant all on *.* to root@'%' identified by 'root';
Query OK, 0 rows affected (0.01 sec)
先
mysql> update user set grant_priv = 'Y'; 然后
mysql> select grant_priv from user;
+------------+
| grant_priv |
+------------+
| Y |
| Y |
| Y |
+------------+
3 rows in set (0.00 sec)