【文章內(nèi)容簡介】
PORARY TABLES:給予用戶在特定數(shù)據(jù)庫中創(chuàng)建臨時(shí)表的權(quán)力。 CREATE VIEW:給予用戶在特定數(shù)據(jù)庫中創(chuàng)建新的視圖的權(quán)力。 SHOW VIEW:給予用戶查看特定數(shù)據(jù)庫中已有視圖的視圖定義的權(quán)力。 CREATE ROUTINE:給予用戶為特定的數(shù)據(jù)庫創(chuàng)建存儲過程和存儲函數(shù)等權(quán)力。 ALTER ROUTINE:給予用戶更新和刪除數(shù)據(jù)庫中已有的存儲過程和存儲函數(shù)等權(quán)力。 EXECUTE ROUTINE:給予用戶調(diào)用特定數(shù)據(jù)庫的存儲過程和存儲函數(shù)的權(quán)力。 LOCK TABLES:給予用戶鎖定特定數(shù)據(jù)庫的已有表的權(quán)力。 ALL或ALL PRIVILEGES:表示以上所有權(quán)限名。,9.2.1 授予權(quán)限,在GRANT語法格式中,授予數(shù)據(jù)庫權(quán)限時(shí)ON關(guān)鍵字后面跟“*”和“數(shù)據(jù)庫.*”?!?”表示當(dāng)前數(shù)據(jù)庫中的所有表;“數(shù)據(jù)庫.*”表示某個(gè)數(shù)據(jù)庫中的所有表。 【例9.8】授予ken在xscj數(shù)據(jù)庫中的所有表的SELECT權(quán)限。 grant select on xscj.* to ken@localhost。 【例9.9】授予ken在xscj數(shù)據(jù)庫中所有的數(shù)據(jù)庫權(quán)限。 use xscj。 grant all on * to ken@localhost。 和表權(quán)限類似,授予一個(gè)數(shù)據(jù)庫權(quán)限也不意味著擁有另一個(gè)權(quán)限。,9.2.1 授予權(quán)限,3. 授予用戶權(quán)限 MySQL授予用戶權(quán)限時(shí)priv_type還可以是以下值。 CREATE USER:給予用戶創(chuàng)建和刪除新用戶的權(quán)力。 SHOW DATABASES:給予用戶使用SHOW DATABASES語句查看所有已有的數(shù)據(jù)庫的定義的權(quán)利。,9.2.1 授予權(quán)限,在GRANT語法格式中,授予用戶權(quán)限時(shí)ON子句中使用“*.*”,表示所有數(shù)據(jù)庫的所有表。 【例9.10】授予peter對所有數(shù)據(jù)庫中的所有表的CREATE、ALTERT和DROP權(quán)限。 grant create ,alter ,drop on *.* to peter@localhost identified by 39。ppwd39。 【例9.11】授予peter創(chuàng)建新用戶的權(quán)力。 grant create user on *.* to peter@localhost。 為了概括權(quán)限,表9.1列出了可以在哪些級別授予某條SQL語句權(quán)限。,9.2.2 權(quán)限轉(zhuǎn)移和限制,【例9.12】授予caddy在xs表上的SELECT權(quán)限,并允許其將該權(quán)限授予其他用戶。 首先在root用戶下授予caddy用戶SELECT權(quán)限: grant select on xscj.xs to caddy@localhost identified by 39。1983092539。 with grant option。 接著,以caddy用戶身份登錄MySQL,登錄方式為: (1)打開命令行窗口,進(jìn)入mysql安裝目錄下的bin目錄: cd C:\Program Files\MySQL\MySQL Server 5.6\bin (2)登錄,輸入命令: mysql hlocalhost ucaddy p19830925 其中,h后為主機(jī)名,u后為用戶名,p后為密碼。,9.2.2 權(quán)限轉(zhuǎn)移和限制,登錄后的界面如圖9.2所示。,9.2.2 權(quán)限轉(zhuǎn)移和限制,登錄后,caddy用戶只有查詢xscj數(shù)據(jù)庫中xs表的權(quán)利,它可以把這個(gè)權(quán)限傳遞給其他用戶,這里假設(shè)用戶Jim已經(jīng)創(chuàng)建: grant select on xscj.xs to Jim@localhost。