今天新建了一個用戶,權限也給了,host設置的為%
但是使用該用戶連接時出現如下錯誤
查看用戶
mysql> select host,user,password from mysql.user;
+-----------+-----------+-------------------------------------------+
| host | user | password |
+-----------+-----------+-------------------------------------------+
| localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| 127.0.0.1 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| ::1 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| localhost | | |
| % | bimengine | *8EB0795119E0710F8C06D70E679FFFFE390A2BCC |
+-----------+-----------+-------------------------------------------+
原因:
mysql.user 表中有另外一些記錄產生了作用,最有可能的就是已經有一條''@localhost記錄,就是用戶名是空,主機字段是localhost的記錄
匿名用戶賬戶的Host列值比'bimengine '@'%'賬戶更具體,在user表中排在前面
解決方法:
刪掉匿名賬號,或者給它一個具體的名字,重啟mysql,問題解決