自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Tables_priv表與columns_priv表

數(shù)據(jù)庫
Tables_priv表與columns_priv表是屬于授權(quán)表的,他們可以起到數(shù)據(jù)庫訪問控制的作用,Tables_priv表和columns_priv表是經(jīng)過更為細(xì)致的分析得出來的,所以具有很高的精密性。

授權(quán)表之前已經(jīng)為大家介紹過了,想了解點擊進(jìn)入MySQL授權(quán)表概述和MySQL服務(wù)器的訪問控制,本文將為大家介紹兩個授權(quán)表,即Tables_priv表與columns_priv表。

Tables_priv表與columns_priv表

  在上面介紹的五種授權(quán)表中,tables_priv和columns_priv是后來加入進(jìn)來的,它們的主要目的是提供細(xì)粒度的用戶控制。這兩個表與授權(quán)表db非常類似,但是其控制的范圍更加細(xì)致,即特定數(shù)據(jù)庫中的特定的表。前面說過,超級用戶可以通過授權(quán)表db來限制用戶在一個數(shù)據(jù)庫中的行為,有了這兩個授權(quán)表,超級用戶可以進(jìn)一步控制用戶針對每個表和每個字段的動作。所以,這給超級用戶提供了更加靈活的控制選項。

在深入學(xué)習(xí)對數(shù)據(jù)表的訪問控制之前,首先讓我們了解一下下列特性:

通配符可以用于這兩個表的host字段,但是不允許在Db、Table_name和Column_name字段使用通配符。
權(quán)限字段被聲明為SET字段。
tables_priv和columns_priv表只應(yīng)當(dāng)通過GRANT/REVOKE命令進(jìn)行修改。通過INSERT命令向這兩個表插入數(shù)據(jù)會導(dǎo)致服務(wù)器不穩(wěn)定!
tables_priv表中的table_priv字段可以允許下列命令:Select、Insert、Update、Delete、Create、Drop、Grant、References、Index和Alter。
tables_priv表中的column_priv字段允許下列命令:Select、Insert、Update和References。
columns_priv表中的type字段允許下列命令:Select、Insert、Update和References。
授權(quán)表tables_priv

下列是一個tables_priv表的示意圖:

下面簡要介紹各字段的含義

Host——適用于那些主機?
Db——適用于從上面的主機所連接的哪些數(shù)據(jù)庫?
User——適用于來自上述主機的哪些用戶?
Table_name——適用于上述數(shù)據(jù)庫中的哪些表?
Table_priv——為這個表賦予哪些權(quán)限?
Column_priv——為這個表中的個字段賦予哪些權(quán)限?
Timestamp——這個權(quán)限是何時賦予的?
Grantor——誰授與該用戶的這個權(quán)限?
 

#p#

要想真正弄懂tables_priv表,最好的辦法就是通過實例進(jìn)行學(xué)習(xí),下面我們就給出一些例子。

例1:

%>GRANT SELECT ON italy TO wj@314interactive.com;
這條命令的作用是什么?以上命令允許來自主機314interactive.com的用戶wj在表italy上至下一個SELECT語句。請記住,只有當(dāng)給定數(shù)據(jù)庫/主機和用戶名對應(yīng)的db或者h(yuǎn)ost表中的SELECT字段的值為N時,才需要訪問這個表。如果給定數(shù)據(jù)庫/主機和用戶名對應(yīng)的db或者h(yuǎn)ost表中的SELECT字段中有一個值為Y的話,那么就無需控制該tables_priv表。

例2

%>GRANT SELECT, INSERT ON oats.italy TO wj@314interactive.com;
這條命令的作用是什么?以上命令允許來自主機314interactive.com的用戶wj對數(shù)據(jù)庫oats中的數(shù)據(jù)表italy執(zhí)行SELECT和INSERT語句。

例3:

%>REVOKE SELECT on oats.italy from wj@314interactive.com
這條命令的作用是什么?以上命令撤消來自主機314interactive.com的用戶wj對數(shù)據(jù)庫oats中的表italy的執(zhí)行SELECT的權(quán)限。

重要的是要認(rèn)識到,包含在tables_priv中的信息僅當(dāng)host/db表不允許用戶執(zhí)行要求的功能所需的權(quán)限時才生效。如果給定的權(quán)限在host/db表中為Y,那么就無需考察tables_priv表。

例4:

%>GRANT SELECT(id,name,address,phone),update(address,phone) ON
company.customers TO gilmore@314interactive.com;
這條命令的作用是什么?以上命令將授予對company數(shù)據(jù)庫中customers表內(nèi)id、name、address和phone字段執(zhí)行SELECT的權(quán)限,以及對address和phone字段執(zhí)行UPDATE的權(quán)限。

這將帶來哪些影響?這條命令會修改tables_priv表和columns_priv表,這是因為它引用這兩個表和表內(nèi)特定的字段。

例5:

%>REVOKE UPDATE(address,phone) ON company.customers FROM gilmore@314interactive.com;
這條命令的作用是什么?這個命令將撤消對company數(shù)據(jù)庫中customers表內(nèi)的address和phone字段執(zhí)行UPDATE操作的權(quán)限。

這將帶來哪些影響?因為該命令直接涉及給定表中的某些字段,所以columns_priv表以及tables_priv表也會更新。

前面說過,只有在必須的情況下才會使用授權(quán)表,舉例來說,如果高優(yōu)先級的表提供了適當(dāng)?shù)臋?quán)限的話,那么就無需查閱優(yōu)先級較低的授權(quán)表了。如果高優(yōu)先級的表中對應(yīng)命令的值為N,那么就需要進(jìn)一步查看低優(yōu)先級的授權(quán)表。

小結(jié):本文先是具體的介紹了Tables_priv表與columns_priv表著兩個授權(quán)表,讓大家對他們有個大概的了解,然后又用舉例子的方法,通過五個例子來講解,更容易理解及接受,希望對大家有所幫助。

【編輯推薦】

  1. PSQL VS MySQL 如何選擇開源數(shù)據(jù)庫
  2. 降低鎖競爭 減少MySQL用戶等待時間
  3. 安全配置MySQL數(shù)據(jù)庫有妙招
責(zé)任編輯:迎迎 來源: IT168網(wǎng)站
相關(guān)推薦

2015-11-03 10:36:49

黑莓盈利手機

2022-09-21 08:03:45

MySQLtable表結(jié)構(gòu)

2010-07-22 16:02:29

2021-01-04 08:24:44

Class字段表方法表

2023-06-27 08:28:40

MySQLInnoDB

2009-12-11 09:27:16

靜態(tài)路由表動態(tài)路由表

2021-07-14 10:38:29

MySQL共享表獨立表

2021-04-19 08:16:38

Hive數(shù)據(jù)類型大數(shù)據(jù)技術(shù)

2009-06-24 10:26:41

Oracle約束分區(qū)表

2020-02-14 18:10:40

MySQL索引數(shù)據(jù)庫

2024-07-26 00:16:11

2019-07-11 10:44:23

Oracle表空間數(shù)據(jù)庫

2020-07-28 09:04:09

NewSQL分庫分表

2025-04-21 10:40:36

2021-09-06 07:58:48

分庫數(shù)據(jù)庫分表

2010-11-11 09:20:46

SQL Server創(chuàng)

2023-02-08 07:52:36

跳躍表數(shù)據(jù)結(jié)構(gòu)

2010-11-29 13:22:45

sybase數(shù)據(jù)表

2023-11-06 06:43:23

單鏈表查詢數(shù)據(jù)結(jié)構(gòu)

2010-05-21 10:14:10

MySQL更改表結(jié)構(gòu)
點贊
收藏

51CTO技術(shù)棧公眾號