freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

mysql金典培訓教程:10第七章-文庫吧資料

2025-07-05 08:01本頁面
  

【正文】 FROM WHERE User=39。39。 簡單形式的 user 是 user%的一個同義詞。 你能在主機名中指定通配符。testhostname39。testuser39。為了容納對任意主機的用戶授予的權利,MySQL 支持以 userhost 格式指定user_name 值。 對于一個列的權限能如下計算: global privilegesOR (database privileges AND host privileges)OR table privilegesOR column privileges在大多數情況下,你只授予用戶一個權限級別上的權限,因此現實通常不象上面所說的那樣復雜。對與一個表或列的權限是由 4 個權限級別的邏輯或形成的。這些權限存儲在 表中。你能透過 ON tbl_name,為具體的表名設置權限。(警告:如果你指定 ON *而你沒有一個當前數據庫,你將影響全局權限!)表級別 表權限作用于一個給定表的所有列。 你能通過使用 ON db_name.*語法設置數據庫權限。 你能通過使用 ON *.*語法設置全局權限數據庫級別 數據庫權限作用于一個給定數據庫的所有表。? what 權限應用的級別GRANT 允許系統(tǒng)主管在 4 個權限級別上授權 MySQL 用戶的權利: 全局級別 全局權限作用于一個給定服務器上的所有數據庫。這是可選的,只來設置列專有的權限。 對于列,你能指定的唯一 priv_type 值是( 即,當你使用一個 column_list 子句時) 是SELECT、INSERT 和 UPDATE。它能用在你想要創(chuàng)建一個沒有權限用戶的時候。 使用 GRANT 語句創(chuàng)建用戶并授權 GRANT 語句的語法GRANT priv_type (columns)ON whatTO user IDENTIFIED BY “password”WITH GRANT OPTION要使用該語句,需要填寫以下部分:163 / 29? priv_type 分配給用戶的權限。密碼是加密后的形式。 IDENTIFIED BY PASSWORD 39。39。其結果為創(chuàng)建該用戶的 GRNAT 授權語句:GRANT RELOAD, SHUTDOWN, PROCESS ON *.* TO 39。語法:SHOW GRANTS FOR user_name為了容納對任意主機的用戶授予的權利,MySQL 支持以 userhost 格式指定user_name 值。比較好的方法是使用 GRANT 語句,因為他們是更簡明并且好像錯誤少些。了解 MySQL 服務器用戶匹配的順序以及身份驗證的過程,有利于你配置一個安全的系統(tǒng)。在很多時候,直接修改授權表是唯一的手段。MySQL 通過授權表實現了一個不同于 SQL92 標準的權限系統(tǒng),本節(jié)所述的授權表的結構和內容對于本章以后的理解十分重要,因為涉及到直接修改授權表的知識。)+++當然,你應該總是測試你在授權表中的條目(例如,使用 mysqlaccess)讓你確保你的存取權限實際上以你認為的方式被設置。)| %. | % | ... (所有權限設為 39。假定你有一臺機器 ,它位于你不認為是安全的一個公共區(qū)域,你可以用下列的 host 表條目子允許除了那臺機器外的網絡上所有主機的存?。?+++| Host | Db | ...+++| | % | ... (所有權限設為 39。在 TcX,host 表包含一個在本地的網絡上所有的機器的表,這些被授予所有的權限。在這種情況下,你有必要的權限執(zhí)行請求,但是服務器不能自己把兩個表區(qū)別開來;兩個條目授予的權限必須組合起來。例如,如果你執(zhí)行一個 INSERT ... SELECT 語句,你就都要 insert 和select 權限。 用布爾術語表示,前面關于一個用戶權限如何計算的描述可以這樣總結: global privilegesOR (database privileges AND host privileges)OR table privilegesOR column privileges它可能不明顯,為什么呢,如果全局 user 條目的權限最初發(fā)現對請求的操作不夠,服務器以后把這些權限加到數據庫、表和列的特定權限。否則,服務器檢查在 tables_priv 和 columns_priv 表中的用戶的表和列權限并把它們加到用戶權限中。) 在確定了由 db 和 host 表條目授予的數據庫特定的權限后,服務器把他們加到由user 表授予的全局權限中。的權限的交集 (而不是并集!)計算。如果有匹配,用戶數據庫特定的權限以在 db 和 host 表的條目的權限,即在兩個條目都是 39。在這種情況下,在 host 表中作進一步查找以發(fā)現 Host 和 Db 字段上的匹配。 如果 db 表中的條目有一個匹配而且它的 Host 字段不是空白的,該條目定義用戶的數據庫特定的權限。Db 字段對應用戶想要存取的數據庫。如果在 user 表中全局權限不夠,服務器通過檢查 db 和 host 表確定特定的用戶數據庫權限: 服務器在 db 表的 Host、Db 和 User 字段上查找一個匹配。)對數據庫有關的請求(insert、update 等等) ,服務器首先通過查找 user 表條目來檢查用戶的全局(超級用戶)權限。例如,如果你想要執(zhí)行 mysqladmin shutdown,但是你的 user 表條目沒有為你授予 shutdown 權限,存取甚至不用檢查 db 或 host 表就被拒絕。)對管理請求(shutdown、reload 等等) ,服務器僅檢查 user 表條目,因為那是唯一指定管理權限的表。(如果你熟悉存取檢查的源代碼,你會注意到這里的描述與在代碼使用的算法略有不同。這類似于 db 表的排序,盡管因為只有 Host 字段可以包含通配符,但排序更簡單。 在兩個表中的 Db、Table_name 和 Column_name 字段不能包含通配符或空白。%39。在范圍字段的值可以如下被指定: 通配符“%”和“_”可用在使用在兩個表的 Host 字段。對于 user 表,排序首先放置最特定的值然后最后最不特定的值,并且當服務器尋找匹配入條目時,它使用它找到的第一個匹配。 db 和 host 表在服務器啟動時被讀取和排序 (同時它讀 user 表) ?;蚩瞻?Db 值意味著“任何數據庫”。 在兩個表中的一個39。%39。Host 值意味著“任何主機”,在 db 表中一個空白 Host 值意味著“對進一步的信息咨詢 host 表”。 在 db 表的39。 db 和 host 表授予數據庫特定的權限。N39。只把 user 表的權限授予超級用戶如服務器或數據庫主管是明智的。)user 表在一個全局基礎上授予賦予你的權限,該權限不管當前的數據庫是什么均適用。授權表用 GRANT 和 REVOKE 命令操作。這正是在授權表中的權限字段發(fā)揮作用的地方。 存取控制,階段 2:請求證實一旦你建立了一個連接,服務器進入階段 2。jerry39。這明顯不是事實。假定 user 表看起來像這樣: +++| Host | User | ...+++| % | jerry | ...| | | ...+++排序后的表看起來像這樣: +++| Host | User | ...+++| | | ...| % | jerry | ...+++一個由 jerry 從 的連接被第一個條目匹配,而一個由 jerry 從 的連接被第二個匹配。條目也將匹配,但是它不是在表中的第一匹配。/39。(39。 條目首先匹配。對于由jeffrey 從 localhost 的一個連接,在 Host 列的39。有相同 Host 值的條目以最特定的 User 值為先的次序排列( 一個空白 User 值意味著“任何用戶”并且是最不特定的)。%39??傊痪湓?,越具體越優(yōu)先。類似地,%. 優(yōu)先于%.,然后是%。要牢記的是字面上的詞優(yōu)先于模式。當服務器讀取 user 表內容時,它根據在 Host 和 User 列中的值排序記錄,Host 值起決定作用(相同的 Host 值排在一起,然后再根據 User 值排序)。找到的第一個匹配決定了被使用的記錄。如果超過一個匹配,服務器怎么選擇使用哪個條目呢?服務器在啟動時讀入 user 表后通過排序來解決這個問題,然后當一個用戶試圖連接時,以排序的順序瀏覽條目,第一個匹配的條目被使用。 一個到來的連接可以被在 user 表中的超過一個條目匹配。為了阻止這樣的企圖,MySQL 不允許匹配以數字和一個點起始的主機名,這樣,如果你用一個命名為類似 的主機,它的名字決不會匹配授權表中 Host 列。.%39。Gwen39。.%39。Gwen39。39。 Gwen, 從 、, 等聯(lián)接。 39。 Gwen, 從在 域的任何主機連接39。 39。 任何用戶, 從任何主機連接39。 39。 Gwen, 從任何主機連接39。 39。 任何用戶, 從 連接,39。 39。 Gwen, 從 連接39。 39。 下面的例子顯示出各種 user 表中 Host 和 User 條目的值的組合如何應用于到來的連接:表 76 Host 和 User 條目的值的組合Host 值 User 值 被條目匹配的連接39。 MySQL 不以任何人可以看的純文本格式存儲口令,相反,正在試圖聯(lián)接的一個用戶提供的口令被加密( 使用 PASSWORD()函數),并且與存儲了 user 表中的已經加密的版本比較。這不意味著匹配任何口令,它意味著用戶必須不指定一個口令進行連接。這意味著一個空白的用戶名被用于在連接期間的進一步的存取檢查(即,在階段 2 期間) 。注意這些值匹配能創(chuàng)建一個連接到你的服務器的任何主機! 通配符字符在 User 字段中不允許,但是你能指定空白的值,它匹配任何名字。匹配任何主機名,一個空白 Host 值等價于39。 一個 Host 值39。指出本地主機。 在 user 表范圍字段可以如下被指定: 一個 Host 值可以是主機名或一個 IP 數字,或39。 你的身份基于 2 個信息: ? 你從那個主機連接 ? 你的 MySQL 用戶名 身份檢查使用 3 個 user 表(Host, User 和 Password)范圍字段執(zhí)行。 存取控制 , 階段 1:連接證實當你試圖聯(lián)接一個 MySQL 服務器時,服務器基于你的身份和你是否能通過供應正確的口令驗證身份來接受或拒絕連接。注意:mysqlaccess 僅用 user、db 和157 / 29host 表僅檢查存取。一個有用的診斷工具是 mysqlaccess 腳本,由 Carlier Yves 提供給 MySQL 分發(fā)。 當 mysqld 服務器啟動時,讀取一次授權表內容。 file 權限也僅在 user 表中指定。這是因為管理性操作是服務器本身的操作并且不是特定數據庫,因此沒有理由在其他授權表中列出這樣的權限。 tables_priv 和 columns_priv 表類似于 db 表,但是更精致:他們在表和列級應用而非在數據庫級。例如,如果你想要一個用戶能在你的網絡從若干主機使用一個數據庫,在用戶的 db 表的 Host 條目設為空值,然后將那些主機的每一個移入 host 表。權限字段決定允許哪個操作。對于允許的連接,權限字段指出用戶的全局( 超級用戶)權限。 服務器在存取控制的兩個階段使用在 mysql 的數據庫中的 user、db 和 host 表對存取控制的第二階段(請求證實 ),如果請求涉及表,服務器可以另外參考tables_priv 和 columns_priv 表。看你是否有足夠的權限實施它。 MySQL 存取控制包含 2 個階段: ? 階段 1:服務器檢查你是否允許連接。例如,用戶從 連接的 bill 不必和從 連接 bill 是同一個人。當你連接一個 MySQL 服務器時, 你的身份由你從那連接的主機和你指定的用戶名來決定,系統(tǒng)根據你的身份和你想做什么來授予權限。References39。Update39。Insert39。Select39。References39。Update39。Insert39。Select39。Alter39。Index39。References39。Grant39。Drop39。Create39。Delete39。Update39。Insert39。Select39。N39。Y39。N39。Y39。N39。特別注意 Table_name 值總是被看作大小寫敏感的,即使在查詢中的表名的大小寫敏感性對待視服務器運行的主機的文件系統(tǒng)而定(UNIX 下是大小寫敏感,而 Windows 不是)。某些作用域列被服務器視為大小寫敏感的,其余不是。這些原則總結在下表中。 ? Table_name,Column_name這些列中的值必須是照字面意思的表或列名,不允許模式和空白。%39。指定一個通配符。或39。在 db 和 host 中,Db 值可以以字面意義指定或使用 SQL 模式字符39。如果你在 Password 列中存儲一個照字面上的口令,用戶將不能連接!GRANT 語句和 mysqladmin password 命令為你自動加密口令,但是如果
點擊復制文檔內容
電大資料相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1