一 、概述
數據庫的重要特點之一就是它的安全性,而安全性的實現則需要復雜的權限管理系統支持。
Mysql數據庫管理系統支持對數據庫、表、字段等進行不同數據區域的權限管理,權限又分為查詢權限、修改權限、刪除權限等等不同的詳細類別的精細化管理。可以說Mysql數據庫是一個數據權限管理非常完備的系統,能夠實現對不同用戶的數據權限做到精准控制。
二、權限管理原理
1、登陸服務器
當某個用戶在客戶端通過登陸命令連接服務器時,從表user中取出host、user、password進行驗證,驗證通過則允許登陸連接。
2、操作數據
某個用戶通過一條命令使用數據時,按照表user、db、tables_priv、columns_priv的順序進行查詢分析。
詳細解釋一下,先檢查全局權限表user,如果表user中對應的權限為Y,則此用戶對所有數據庫的權限都為Y,將不再檢查表db, tables_priv,columns_priv。如果user中對應的權限為N,則到db表中檢查此用戶對應的具體數據庫,並得到db中為Y的權限,如果db中為N,則檢查tables_priv中此數據庫對應的具體表,取得表中的權限,以此類推。