MySQL的權(quán)限設(shè)置跟管理
2016-01-19 14:33:43
17167
權(quán)限簡(jiǎn)單的理解就是mysql允許權(quán)力以內(nèi)的事情,不可越界。比如只允許執(zhí)行select操作,那么就不能執(zhí)行update操作。只允許從某臺(tái)機(jī)器上連接mysql,
那么就不能從除那臺(tái)機(jī)器以外的其他機(jī)器連接mysql。
1、GRANT命令使用說明:
先來看一個(gè)例子,創(chuàng)建一個(gè)只允許從本地登錄的超級(jí)用戶jack,并允許將權(quán)限賦予別的用戶,密碼為:jack.

GRANT命令說明:
ALL PRIVILEGES 是表示所有權(quán)限,也可以使用select、update等權(quán)限。
ON 用來指定權(quán)限針對(duì)哪些庫(kù)和表。
*.* 中前面的*號(hào)用來指定數(shù)據(jù)庫(kù)名,后面的*號(hào)用來指定表名。
TO 表示將權(quán)限賦予某個(gè)用戶。
jack@localhost表示jack用戶,@后面接限制的主機(jī),可以是IP、IP段、域名以及%,%表示任何地方。注意:這里%有的版本不包括本地,以前碰到過給某個(gè)用戶設(shè)置 了%允許任何地方登錄,但是在本地登錄不了,這個(gè)和版本有關(guān)系,遇到這個(gè)問題再加一個(gè)localhost的用戶就可以了。
IDENTIFIED BY 指定用戶的登錄密碼。
WITH GRANT OPTION 這個(gè)選項(xiàng)表示該用戶可以將自己擁有的權(quán)限授權(quán)給別人。注意:經(jīng)常有人在創(chuàng)建操作用戶的時(shí)候不指定WITH GRANT OPTION選項(xiàng)導(dǎo)致后來該用戶不能使用GRANT命令創(chuàng)建用戶或者給其它用戶授權(quán)。
備注:可以使用GRANT重復(fù)給用戶添加權(quán)限,權(quán)限疊加,比如你先給用戶添加一個(gè)select權(quán)限,然后又給用戶添加一個(gè)insert權(quán)限,那么該用戶就同時(shí)擁有了select和insert權(quán)限。
2、刷新權(quán)限
使用這個(gè)命令使權(quán)限生效,尤其是你對(duì)那些權(quán)限表user、db、host等做了update或者delete更新的時(shí)候。以前遇到過使用grant后權(quán)限沒有更新的情況,只要對(duì)權(quán)限做了更改就使用FLUSH PRIVILEGES命令來刷新權(quán)限。
3、查看權(quán)限