您好,登錄后才能下訂單哦!
本文實(shí)例講述了MySQL用戶與權(quán)限的管理。分享給大家供大家參考,具體如下:
用戶連接到MySQL,可以做各種查詢,這都是MySQL用戶與權(quán)限功能在背后維持著操作。
用戶與數(shù)據(jù)庫服務(wù)器交互數(shù)據(jù),分為兩個(gè)階段:
(1)你有沒有權(quán)連接上來
(2)你有沒有權(quán)執(zhí)行本操作
1、你有沒有權(quán)連接上來
服務(wù)器如何判斷用戶有沒有權(quán)連接上來?
依據(jù):
1)你從哪里來?host
2)你是誰?user
3)你的密碼是多少?password
用戶的這三個(gè)信息,存儲(chǔ)在mysql庫中的user表中。
修改host域,使IP可以連接
mysql>update user set host='192.168.137.123' where user = 'root'; mysql>flush privileges; --沖刷權(quán)限
修改用戶密碼
mysql>update user set password=password('11111111') where xxx; mysql>flush privileges; --沖刷權(quán)限
2、你有沒有權(quán)執(zhí)行本操作
在mysql中,有一個(gè)庫是mysql庫,在這個(gè)庫中有三個(gè)表,一個(gè)是user表,user表中存儲(chǔ)了所有用戶的權(quán)限信息。一個(gè)是db表,db表存儲(chǔ)的是所有用戶在數(shù)據(jù)庫層的權(quán)限信息。一個(gè)是tables_priv表,tables_priv表存儲(chǔ)的是所有用戶在表層的權(quán)限信息。
用戶登錄,user表首先能限制用戶登錄,其次還保存了該用戶的全局權(quán)限,如果該用戶沒有任何權(quán)限,那么將從db表中查找該用戶是否有某個(gè)數(shù)據(jù)庫的操作權(quán)限,如果都沒有,將從table_priv表中查找該用戶是否有某個(gè)表的操作權(quán)限,如果有,則該用戶可以按照已有的權(quán)限來操作該表。
1)全局授權(quán)和收回
全局授權(quán)格式:
grant [權(quán)限1,權(quán)限2,權(quán)限3] on *.* to user@'host' identified by 'password'
常用權(quán)限:all、create、drop、select、insert、delete、update
授權(quán):
創(chuàng)建lisi用戶,host為192.168.191.%,%通配符表示192.168.191.xxx結(jié)尾的主機(jī)都可以連接,密碼為12345678。
grant all on *.* to lisi@'192.168.191.%' identified by '12345678';
收回權(quán)限:
revoke all on *.* from lisi@'192.168.191.%';
2)數(shù)據(jù)庫級(jí)授權(quán)和收回
需求:讓lisi用戶擁有mysqlmaster數(shù)據(jù)庫的所有操作權(quán)限
授權(quán):
grant all on mysqlmaster.* to lisi@'192.168.191.%' identified by '12345678';
收回:
revoke all on mysqlmaster.* from lisi@'192.168.191.%';
3)表級(jí)授權(quán)和收回
需求:讓lisi用戶具有mysqlmaster數(shù)據(jù)庫下的goods表的insert、update、select三個(gè)操作的權(quán)限。
授權(quán):
grant insert,update,select on mysqlmaster.goods to lisi@'192.168.191.%' identified by '12345678';
收回:
revoke insert,update,select on mysqlmaster.goods from lisi@'192.168.191.%';
更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲(chǔ)過程技巧大全》、《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總》
希望本文所述對(duì)大家MySQL數(shù)據(jù)庫計(jì)有所幫助。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。