MySQL用戶與權(quán)限的管理詳解
本文實(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è)信息,存儲在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表中存儲了所有用戶的權(quán)限信息。一個(gè)是db表,db表存儲的是所有用戶在數(shù)據(jù)庫層的權(quán)限信息。一個(gè)是tables_priv表,tables_priv表存儲的是所有用戶在表層的權(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ù)庫級授權(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)表級授權(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存儲過程技巧大全》、《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總》
希望本文所述對大家MySQL數(shù)據(jù)庫計(jì)有所幫助。
相關(guān)文章
MySQL實(shí)現(xiàn)字段分割一行轉(zhuǎn)多行的示例代碼
這篇文章主要介紹了MySQL實(shí)現(xiàn)字段分割一行轉(zhuǎn)多行的示例代碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
優(yōu)化 MySQL 3 個(gè)簡單的小調(diào)整
本文給大家?guī)砹藘?yōu)化 MySQL 3 個(gè)簡單的小調(diào)整,需要的朋友參考下2018-02-02
MAC下MYSQL數(shù)據(jù)庫密碼忘記的解決辦法
這篇文章主要介紹了Mac操作系統(tǒng)下MYSQL數(shù)據(jù)庫密碼忘記的快速解決辦法,教大家重置MYSQ密碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11
淺談MYSQL中樹形結(jié)構(gòu)表3種設(shè)計(jì)優(yōu)劣分析與分享
在開發(fā)中經(jīng)常遇到樹形結(jié)構(gòu)的場景,本文將以部門表為例對比幾種設(shè)計(jì)的優(yōu)缺點(diǎn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
詳解MySQL中事務(wù)隔離級別的實(shí)現(xiàn)原理
這篇文章主要介紹了MySQL中事務(wù)隔離級別的實(shí)現(xiàn)原理,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下2021-01-01
FROM_UNIXTIME 格式化MYSQL時(shí)間戳函數(shù)
對MYSQL沒有進(jìn)行過深入的研究,基礎(chǔ)知識匱乏,一遇到問題只能手冊,看來要把MYSQL的學(xué)習(xí)安排進(jìn)時(shí)間表了。2011-04-04

