mysql的user表和權限驗證

mysql庫中user表

host:指定該用戶在哪個主機上可以登陸,如果是本地用戶可用localhost,如果想讓該用戶可以從任意遠程主機登陸,可以使用通配符%

mysql權限表的驗證過程爲:

此處引用

先從user表中的Host,User,Password這3個字段中判斷連接的ip、用戶名、密碼是否存在,存在則通過驗證。
通過身份認證後,進行權限分配,按照user,db,tables_priv,columns_priv的順序進行驗證。即先檢查全局權限表user,如果user中對應的權限爲Y,則此用戶對所有數據庫的權限都爲Y,將不再檢查db, tables_priv,columns_priv;如果爲N,則到db表中檢查此用戶對應的具體數據庫,並得到db中爲Y的權限;如果db中爲N,則檢查tables_priv中此數據庫對應的具體表,取得表中的權限Y,以此類推。

mysql 配置

在 /etc/my.cnf 的 [mysqld]下加入 skip-grant-tables #跳過數據庫權限驗證

[mysqld] 下的 bind-address = 0.0.0.0
3306端口監聽在127.0.0.1,只有本機客戶端可以訪問,其他服務器無法訪問

3306端口如果監聽在0.0.0.0上,如果沒有端口限制,那麼其他服務器則可以連接該服務器的該端口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章