一、資料庫和表的許可權
下列許可權運用於資料庫和表上的操作。
select
允許你使用select語句從表中檢索資料。select語句只有在他們真正從乙個表中檢索行是才需要select許可權,你可以執行某個select語句,甚至沒有任何到伺服器上的資料
庫里的訪問任何東西的許可。例如,你可使用mysql客戶作為乙個簡單的計算器:
mysql> select 1+1;
mysql> select pi()*2;
update
允許你修改表中的已有的記錄。
insert
允許在表中插入記錄。
delete
允許你從表中刪除現有記錄。
alter
允許你使用alter table語句,這其實是乙個簡單的第一級許可權,你必須由其他許可權,這看你想對資料庫實施什麼操作。
create
允許你建立資料庫和表,但不允許建立索引。
drop
允許你刪除(拋棄)資料庫和表,但不允許刪除索引。
注意:如果你將mysql資料庫的drop許可權授予乙個使用者,該使用者能拋棄儲存了mysql訪問許可權的資料庫!
index
允許你建立並刪除索引。
references
目前不用。
二、管理許可權
下列許可權運用於控**務器或使用者授權能力的操作的管理性操作。
file
允許你告訴伺服器讀或寫伺服器主機上的檔案。該許可權不應該隨便授予,它很危險,見「迴避授權表風險」。伺服器確實較謹慎地保持在一定範圍內使用該許可權。你只能讀
任何人都能讀的檔案。你正在寫的檔案必須不是現存的檔案,這防止你迫使伺服器重寫重要檔案,如/etc/passwd或屬於別人的資料庫的資料目錄。
如果你授權file許可權,確保你不以unix的root使用者執行伺服器,因為root可在檔案系統的任何地方建立新檔案。如果你以乙個非特權使用者執行伺服器,伺服器只能在給使用者
能訪問的目錄中建立檔案。
grant
允許你將你自己的許可權授予別人,包括grant。
process
允許你通過使用show process語句或mysqladmin process命令檢視伺服器內正在執行的執行緒(程序)的資訊。這個許可權也允許你用kill語句或mysqladmin kill命令殺死線
程。你總是能看到或殺死你自己的執行緒。process許可權賦予你對任何執行緒做這些事情的能力。
reload
允許你執行大量的伺服器管理操作。你可以發出flush語句,你也能指性mysqladmin的reload、refresh、flush-hosts、flush-logs、flush-privileges和flush-tables等
命令。shutdown
允許你用mysqladmin shutdown關閉伺服器。
在user、db和host表中,每乙個許可權以乙個單獨的列指定。這些列全部宣告為乙個enum("n","y")型別,所以每個權的預設值是「n」。在tables_priv和columns_priv中的
許可權以乙個set表示,它允許許可權用乙個單個列以任何組合指定。這兩個錶比其他三個表更新,這就是為什麼它們使用更有效的表示方式的原因。(有可能在未來,user、db和
host表也用乙個set型別表示。)
MYSQL入門學習之二十一 MYSQL使用者管理
一 新增使用者 1 直接新增 mysql insert into mysql.user host,user,password values testuser password testuser 2 新增使用者並賦權 mysql grant select on test.to testuser1 lo...
MYSQL入門學習之二十一 MYSQL使用者管理
一 新增使用者 1 直接新增 mysql insert into mysql.user host,user,password values testuser password testuser 2 新增使用者並賦權 mysql grant select on test.to testuser1 lo...
python 學習筆記(二十一)
coding utf8 author liwei windows平台多程序匯入multiprocessing模組 from multiprocessing import process,queue from multiprocessing import pool import os,time,ran...