在mysql中用戶權(quán)限是一個(gè)很重析 參數(shù),因?yàn)榕_(tái)mysql服務(wù)器中會(huì)有大量的用戶,每個(gè)用戶的權(quán)限需要不一樣的,下面我來介紹如何給mysql用戶分配權(quán)限吧,有需要了解的朋友可參考.
1,Mysql下創(chuàng)建新的用戶
語法:create user 用戶名 identified by '密碼';
例:create user xiaogang identified by '123456';
新創(chuàng)建的用戶,默認(rèn)情況下是沒有任何權(quán)限的.
2.如何給用戶分配權(quán)限
語法:grant 權(quán)限 on 數(shù)據(jù)庫.數(shù)據(jù)表 to '用戶' @ '主機(jī)名';
例:給 xiaogang 分配所有的權(quán)限
grant all on *.* to 'xiaogang'@'%';
這個(gè)時(shí)候 xiaogang 就擁有了所有權(quán)限了.
3.如何更精準(zhǔn)的控制用戶的權(quán)限呢?
grant 權(quán)限 on 數(shù)據(jù)庫.數(shù)據(jù)表 to '用戶' @ '主機(jī)名';
例:讓 xiaogang 有查詢 tmp 數(shù)據(jù)庫 tmp1 表的權(quán)限;
grant select on temp.temp1 to 'xiaogang'@'%';//這個(gè)時(shí)候 xiaogang 就具有查詢temp小的temp1的權(quán)限了.
例如:mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′; //Vevb.com
給來自10.163.225.87的用戶joe分配可對(duì)數(shù)據(jù)庫vtdc的employee表進(jìn)行select,insert,update,delete,create,drop等操作的權(quán)限,并設(shè)定口令為123.
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;
給來自10.163.225.87的用戶joe分配可對(duì)數(shù)據(jù)庫vtdc所有表進(jìn)行所有操作的權(quán)限,并設(shè)定口令為123.
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;
給來自10.163.225.87的用戶joe分配可對(duì)所有數(shù)據(jù)庫的所有表進(jìn)行所有操作的權(quán)限,并設(shè)定口令為123。
mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;
給本機(jī)用戶joe分配可對(duì)所有數(shù)據(jù)庫的所有表進(jìn)行所有操作的權(quán)限,并設(shè)定口令為123。
4.如何收回權(quán)限,一般指有root用戶才具有該權(quán)限.
語法:revoke 權(quán)限 on 數(shù)據(jù)庫.數(shù)據(jù)表 from '用戶'@'主機(jī)名';
例:收回 xiaogang的所有權(quán)限
revoke all on *.* from 'xiaogang' @'%';
好了下面我個(gè)把步驟總結(jié)一下很具體的一個(gè)過程.
第一步:mysql服務(wù)的啟動(dòng)和停止
net stop mysql
net start mysql
第二步:直接登陸mysql
語法如下:mysql -u用戶名 -p用戶密碼
鍵入命令mysql -uroot -p,回車后提示你輸入密碼,輸入123456,然后回車即可進(jìn)入到mysql中了,mysql的提示符是:
mysql>
注意,如果是連接到另外的機(jī)器上,則需要加入一個(gè)參數(shù)-h機(jī)器IP.
第三步:增加新用戶
格式:grant 權(quán)限 on 數(shù)據(jù)庫.* to 用戶名@登錄主機(jī) identified by "密碼"
如,增加一個(gè)用戶user1密碼為password1,讓其可以在本機(jī)上登錄,并對(duì)所有數(shù)據(jù)庫有查詢、插入、修改、刪除的權(quán)限,首先用以root用戶連入mysql,然后鍵入以下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
如果希望該用戶能夠在任何機(jī)器上登陸mysql,則將localhost改為"%",如果你不想user1有密碼,可以再打一個(gè)命令將密碼去掉.
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
第四步:操作數(shù)據(jù)庫
登錄到mysql中,然后在mysql的提示符下運(yùn)行下列命令,每個(gè)命令以分號(hào)結(jié)束.
新聞熱點(diǎn)
疑難解答
圖片精選