欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          mysql的權(quán)限表有哪些

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

          mysql的權(quán)限表有哪些

          本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。

          在 MySQL 數(shù)據(jù)庫中,權(quán)限表有user 表、db 表、tables_priv 表、columns_priv 表和 procs_priv 表。

          user權(quán)限表

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

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

          用戶列

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

          權(quán)限列

          權(quán)限列的字段決定了用戶的權(quán)限,用來描述在全局范圍內(nèi)允許對數(shù)據(jù)和數(shù)據(jù)庫進行的操作。

          權(quán)限大致分為兩大類,分別是高級管理權(quán)限和普通權(quán)限:

          • 高級管理權(quán)限主要對數(shù)據(jù)庫進行管理,例如關(guān)閉服務(wù)的權(quán)限、超級權(quán)限和加載用戶等;

          • 普通權(quán)限主要操作數(shù)據(jù)庫,例如查詢權(quán)限、修改權(quán)限等。

          user 表的權(quán)限列包括 Select_priv、Insert_ priv 等以 priv 結(jié)尾的字段,這些字段值的數(shù)據(jù)類型為 ENUM,可取的值只有 Y 和 N:Y 表示該用戶有對應(yīng)的權(quán)限,N 表示該用戶沒有對應(yīng)的權(quán)限。從安全角度考慮,這些字段的默認(rèn)值都為 N。

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

          安全列

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

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

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

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

          資源控制列

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

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

          以上字段的默認(rèn)值為 0,表示沒有限制。一個小時內(nèi)用戶查詢或者連接數(shù)量超過資源控制限制,用戶將被鎖定,直到下一個小時才可以在此執(zhí)行對應(yīng)的操作??梢允褂?GRANT 語句更新這些字段的值。

          db表

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

          用戶列

          db 表用戶列有 3 個字段,分別是 Host、User、Db,標(biāo)識從某個主機連接某個用戶對某個數(shù)據(jù)庫的操作權(quán)限,這 3 個字段的組合構(gòu)成了 db 表的主鍵。

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

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

          權(quán)限列

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

          tables_priv表和columns_priv表

          tables_priv 表用來對單個表進行權(quán)限設(shè)置,columns_priv 表用來對單個數(shù)據(jù)列進行權(quán)限設(shè)置。tables_priv 表結(jié)構(gòu)如下表所示:

          字段名 字段類型 是否為空 默認(rèn)值 說明
          Host char(60) NO 主機
          Db char(64) NO 數(shù)據(jù)庫名
          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 表示對表的操作權(quán)限,包括 Select、Insert、Update、Delete、Create、Drop、Grant、References、Index 和 Alter 等
          Column_priv set('Select','Insert','Update','References') NO 表示對表中的列的操作權(quán)限,包括 Select、Insert、Update 和 References

          columns_priv 表結(jié)構(gòu)如下表所示:

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

          procs_priv表

          procs_priv 表可以對存儲過程和存儲函數(shù)進行權(quán)限設(shè)置,procs_priv 的表結(jié)構(gòu)如表所示:

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

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號