站長資訊網
        最全最豐富的資訊網站

        mysql的權限表有哪些

        mysql的權限表有:1、user表,用來記錄允許連接到服務器的賬號信息,該表里啟用的所有權限都是全局級的,適用于所有數據庫;2、db表,存儲了用戶對某個數據庫的操作權限;3、tables_priv表,用來對單個表進行權限設置;4、columns_priv表,用來對單個數據列進行權限設置;5、procs_priv表,用于對存儲過程和存儲函數進行權限設置。

        mysql的權限表有哪些

        本教程操作環境:windows7系統、mysql8版本、Dell G3電腦。

        在 MySQL 數據庫中,權限表有user 表、db 表、tables_priv 表、columns_priv 表和 procs_priv 表。

        user權限表

        user 表是 MySQL 中最重要的一個權限表,用來記錄允許連接到服務器的賬號信息。需要注意的是,在 user 表里啟用的所有權限都是全局級的,適用于所有數據庫。

        user 表中的字段大致可以分為 4 類,分別是用戶列、權限列、安全列和資源控制列。

        用戶列

        用戶列存儲了用戶連接 MySQL 數據庫時需要輸入的信息。需要注意的是 MySQL 5.7 版本不再使用 Password 來作為密碼的字段,而改成了 authentication_string。

        權限列

        權限列的字段決定了用戶的權限,用來描述在全局范圍內允許對數據和數據庫進行的操作。

        權限大致分為兩大類,分別是高級管理權限和普通權限:

        • 高級管理權限主要對數據庫進行管理,例如關閉服務的權限、超級權限和加載用戶等;

        • 普通權限主要操作數據庫,例如查詢權限、修改權限等。

        user 表的權限列包括 Select_priv、Insert_ priv 等以 priv 結尾的字段,這些字段值的數據類型為 ENUM,可取的值只有 Y 和 N:Y 表示該用戶有對應的權限,N 表示該用戶沒有對應的權限。從安全角度考慮,這些字段的默認值都為 N。

        如果要修改權限,可以使用 GRANT 語句為用戶賦予一些權限,也可以通過 UPDATE 語句更新 user 表的方式來設置權限。

        安全列

        安全列主要用來判斷用戶是否能夠登錄成功,user 表中的安全列如下表所示:

        user 表的安全列
        字段名 字段類型 是否為空 默認值 說明
        ssl_type enum('','ANY','X509','SPECIFIED') NO 支持ssl標準加密安全字段
        ssl_cipher blob NO 支持ssl標準加密安全字段
        x509_issuer blob NO 支持x509標準字段
        x509_subject blob NO 支持x509標準字段
        plugin char(64) NO mysql_native_password 引入plugins以進行用戶連接時的密碼驗證,plugin創建外部/代理用戶
        password_expired enum('N','Y') NO N 密碼是否過期 (N 未過期,y 已過期)
        password_last_changed timestamp YES 記錄密碼最近修改的時間
        password_lifetime smallint(5) unsigned YES 設置密碼的有效時間,單位為天數
        account_locked enum('N','Y') NO N 用戶是否被鎖定(Y 鎖定,N 未鎖定)

        注意:即使 password_expired 為“Y”,用戶也可以使用密碼登錄 MySQL,但是不允許做任何操作。

        通常標準的發行版不支持 ssl,讀者可以使用 SHOW VARIABLES LIKE "have_openssl" 語句來查看是否具有 ssl 功能。如果 have_openssl 的值為 DISABLED,那么則不支持 ssl 加密功能。

        資源控制列

        資源控制列的字段用來限制用戶使用的資源,user 表中的資源控制列如表 4 所示。

        user 表的資源控制列
        字段名 字段類型 是否為空 默認值 說明
        max_questions int(11) unsigned NO 0 規定每小時允許執行查詢的操作次數
        max_updates int(11) unsigned NO 0 規定每小時允許執行更新的操作次數
        max_connections int(11) unsigned NO 0 規定每小時允許執行的連接操作次數
        max_user_connections int(11) unsigned NO 0 規定允許同時建立的連接次數

        以上字段的默認值為 0,表示沒有限制。一個小時內用戶查詢或者連接數量超過資源控制限制,用戶將被鎖定,直到下一個小時才可以在此執行對應的操作。可以使用 GRANT 語句更新這些字段的值。

        db表

        db 表比較常用,是 MySQL 數據庫中非常重要的權限表,表中存儲了用戶對某個數據庫的操作權限。表中的字段大致可以分為兩類,分別是用戶列和權限列。

        用戶列

        db 表用戶列有 3 個字段,分別是 Host、User、Db,標識從某個主機連接某個用戶對某個數據庫的操作權限,這 3 個字段的組合構成了 db 表的主鍵。

        db 表的用戶列如下表所示:

        字段名 字段類型 是否為空 默認值 說明
        Host char(60) NO 主機名
        Db char(64) NO 數據庫名
        User char(32) NO 用戶名

        權限列

        db 表中的權限列和 user 表中的權限列大致相同,只是user 表中的權限是針對所有數據庫的,而 db 表中的權限只針對指定的數據庫。如果希望用戶只對某個數據庫有操作權限,可以先將 user 表中對應的權限設置為 N,然后在 db 表中設置對應數據庫的操作權限。

        tables_priv表和columns_priv表

        tables_priv 表用來對單個表進行權限設置,columns_priv 表用來對單個數據列進行權限設置。tables_priv 表結構如下表所示:

        字段名 字段類型 是否為空 默認值 說明
        Host char(60) NO 主機
        Db char(64) NO 數據庫名
        User char(32) NO 用戶名
        Table_name char(64) NO 表名
        Grantor char(93) NO 修改該記錄的用戶
        Timestamp timestamp NO CURRENT_TIMESTAMP 修改該記錄的時間
        Table_priv set('Select','Insert','Update','Delete','
        Create','Drop','Grant','References',
        'Index','Alter','Create View','Show view','Trigger')
        NO 表示對表的操作權限,包括 Select、Insert、Update、Delete、Create、Drop、Grant、References、Index 和 Alter 等
        Column_priv set('Select','Insert','Update','References') NO 表示對表中的列的操作權限,包括 Select、Insert、Update 和 References

        columns_priv 表結構如下表所示:

        字段名 字段類型 是否為空 默認值 說明
        Host char(60) NO 主機
        Db char(64) NO 數據庫名
        User char(32) NO 用戶名
        Table_name char(64) NO 表名
        Column_name char(64) NO 數據列名稱,用來指定對哪些數據列具有操作權限
        Timestamp timestamp NO CURRENT_TIMESTAMP 修改該記錄的時間
        Column_priv set('Select','Insert','Update','References') NO 表示對表中的列的操作權限,包括 Select、Insert、Update 和 References

        procs_priv表

        procs_priv 表可以對存儲過程和存儲函數進行權限設置,procs_priv 的表結構如表所示:

        字段名 字段類型 是否為空 默認值 說明
        Host char(60) NO 主機名
        Db char(64) NO 數據庫名
        User char(32) NO 用戶名
        Routine_name char(64) NO 表示存儲過程或函數的名稱
        Routine_type enum('FUNCTION','PROCEDURE') NO 表示存儲過程或函數的類型,Routine_type 字段有兩個值,分別是 FUNCTION 和 PROCEDURE。FUNCTION 表示這是一個函數;PROCEDURE 表示這是一個
        存儲過程。
        Grantor char(93) NO 插入或修改該記錄的用戶
        Proc_priv set('Execute','Alter Routine','Grant') NO 表示擁有的權限,包括 Execute、Alter Routine、Grant 3種
        Timestamp timestamp NO CURRENT_TIMESTAMP 表示記錄更新時間

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 91久久婷婷国产综合精品青草| 国产精品久久久久久福利69堂| 国产成人精品无码一区二区| 久久久久人妻一区精品果冻| 久久国产精品久久| 亚洲高清专区日韩精品| 精品乱子伦一区二区三区高清免费播放 | 国产办公室秘书无码精品99| 日韩精品在线播放| 精品国产爽爽AV| 国产精品偷伦视频免费观看了 | 91精品国产福利在线导航| 亚洲精品国产首次亮相| 欧美国产精品va在线观看| 国自产精品手机在线观看视| 日韩精品免费在线视频| 国产精品55夜色66夜色| 国产女人精品视频国产灰线| 午夜精品久久久久久毛片| 亚洲精品成人久久久| 久久精品视屏| 精品偷自拍另类在线观看丰满白嫩大屁股ass | 91麻精品国产91久久久久| 欧美一区二区精品| 色综合久久精品中文字幕首页| 国产精品成人va| 国产精品久久国产精品99盘| 91在线视频精品| 国产精品高清视亚洲精品| 国产精品久久久久影视不卡| 国产精品美女久久久| 免费视频精品一区二区三区| 久久亚洲国产午夜精品理论片 | 久久久久九国产精品| 日韩三级精品| 亚洲av午夜福利精品一区| 少妇人妻偷人精品免费视频| 国产精品国产三级国产av品爱网| 国产亚洲精品资源在线26u| 99精品国产高清一区二区麻豆| 成人午夜精品网站在线观看|