Database: mysql Table: user Rows: 3
+---------------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------------+----------+------+-----+---------+-------+
| Host | char(60) | | PRI | | |
| User | char(16) | | PRI | | |
| password | char(16) | | | | |
| ......_priv | char(1) | | | N | |
+---------------+----------+------+-----+---------+-------+
Database: mysql Table: db Rows: 3
+-------------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+----------+------+-----+---------+-------+
| Host | char(60) | | PRI | | |
| Db | char(32) | | PRI | | |
| User | char(16) | | PRI | | |
| ......_priv | char(1) | | | N | |
+-------------+----------+------+-----+---------+-------+
Database: mysql Table: host Rows: 0
+-------------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+----------+------+-----+---------+-------+
| Host | char(60) | | PRI | | |
| Db | char(32) | | PRI | | |
| ......_priv | char(1) | | | N | |
+-------------+----------+------+-----+---------+-------+
1.未在db表中列出的任意資料庫,user表中的許可權都為有效.
可只在user表中設定某些superuser的許可權,而在db表中不涉及.
2.host只用來維護有效server,預設為空白表,即為區域網路內
的所有機器.
3.可用mysql -u root mysql命令修改許可權.
4.許可權匹配時遵循的原則是:
a. 表順序: host -> db -> user;
b. host和db域可有萬用字元%和_,表示所有和單個字元;
c. 同一表中,也是 host->db->user域的順序,無萬用字元優
於有萬用字元;
d. user域為空白(''),表示匹配所有其他的使用者;
e. host可為機器名,localhost,IP,或萬用字元(如192.10.10.%),
但不允許用數字和點號開頭(如123.321.1.edu.cn);
f. 各表中的許可權最後相"或";
5.修改完之後,執行mysqladmin -u root reload更新.