电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

MySQL兩種刪除用戶(hù)語(yǔ)句的區(qū)別(delete user和drop user)

瀏覽:4日期:2023-10-09 17:08:55

Tip:

在MySQL中,我們經(jīng)常需要?jiǎng)?chuàng)建用戶(hù)和刪除用戶(hù),創(chuàng)建用戶(hù)時(shí),我們一般使用create user或者grant語(yǔ)句來(lái)創(chuàng)建,create語(yǔ)法創(chuàng)建的用戶(hù)沒(méi)有任何權(quán)限,需要再使用grant語(yǔ)法來(lái)分配權(quán)限,而grant語(yǔ)法創(chuàng)建的用戶(hù)直接擁有所分配的權(quán)限。在一些測(cè)試用戶(hù)創(chuàng)建完成之后,做完測(cè)試,可能用戶(hù)的生命周期就結(jié)束了,需要將用戶(hù)刪除,而刪除用戶(hù)在MySQL中一般有兩種方法,一種是drop user,另外一種是delete from mysql.user,那么這兩種方法有什么區(qū)別呢?我們這里通過(guò)例子演示。

delete from mysql.user

首先,我們看看delete from mysql.user的方法。我們創(chuàng)建兩個(gè)用戶(hù)用來(lái)測(cè)試,測(cè)試環(huán)境是MySQL5.5版本,用戶(hù)名分別為yeyz@’%’和yeyz@’localhost’,創(chuàng)建用戶(hù)的語(yǔ)法如下:

mysql 15:13:12>>create user yeyz@’%’ identified by ’123456’;Query OK, rows affected (. sec)mysql 15:20:01>>grant select,create,update,delete on yeyz.yeyz to yeyz@’%’;Query OK, rows affected (. sec)mysql 15:29:48>>GRANT USAGE ON yeyz.yeyz TO ’yeyz’@localhost IDENTIFIED BY ’123456’;Query OK, rows affected (. sec)mysql--dba_admin@127...1:(none) 15:20:39>>show grants for yeyz@’%’;+-----------------------------------------------------------------------------------------------------+| Grants for yeyz@% |+-----------------------------------------------------------------------------------------------------+| GRANT USAGE ON *.* TO ’yeyz’@’%’ IDENTIFIED BY PASSWORD ’*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9’ || GRANT SELECT, UPDATE, DELETE, CREATE ON `yeyz`.`yeyz` TO ’yeyz’@’%’ |+-----------------------------------------------------------------------------------------------------+

此時(shí)我們通過(guò)delete的方法手動(dòng)刪除mysql.user表中的這兩個(gè)用戶(hù),在去查看用戶(hù)表,我們發(fā)現(xiàn):

mysql 15:20:43>>delete from mysql.user where user=’yeyz’;Query OK, rows affected (. sec)mysql 15:21:40>>select user,host from mysql.user;+------------------+-----------------+| user | host |+------------------+-----------------+| dba_yeyz | localhost || root | localhost || tkadmin | localhost |+------------------+-----------------+ rows in set (. sec)

已經(jīng)沒(méi)有這兩個(gè)yeyz的用戶(hù)了,此時(shí)我們使用show grants for命令查看剛才刪除的用戶(hù),我們發(fā)現(xiàn)依舊是存在這個(gè)用戶(hù)的權(quán)限說(shuō)明的:

mysql 15:24:21>>show grants for yeyz@’%’;+-----------------------------------------------------------------------------------------------------+| Grants for yeyz@% |+-----------------------------------------------------------------------------------------------------+| GRANT USAGE ON *.* TO ’yeyz’@’%’ IDENTIFIED BY PASSWORD ’*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9’ || GRANT SELECT, UPDATE, DELETE, CREATE ON `yeyz`.`yeyz` TO ’yeyz’@’%’ |+-----------------------------------------------------------------------------------------------------+ rows in set (0.00 sec)

說(shuō)明我們雖然從mysql.user表里面刪除了這個(gè)用戶(hù),但是在db表和權(quán)限表里面這個(gè)用戶(hù)還是存在的,為了驗(yàn)證這個(gè)結(jié)論,我們重新創(chuàng)建一個(gè)yeyz@localhost的用戶(hù),這個(gè)用戶(hù)我們只給它usage權(quán)限,其他的權(quán)限我們不配置,如下:

mysql ::>>GRANT USAGE ON yeyz.yeyz TO ’yeyz’@localhost IDENTIFIED BY ’123456’;Query OK, rows affected (. sec)

這個(gè)時(shí)候,我們使用yeyz@localhost這個(gè)用戶(hù)去登陸數(shù)據(jù)庫(kù)服務(wù),然后進(jìn)行相關(guān)的update操作,如下:

[dba_mysql@tk-dba-mysql-stat-- ~]$ /usr/local/mysql/bin/mysql -uyeyz --socket=/data/mysql_4306/tmp/mysql.sock --port= -p -hlocalhostEnter password: Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is Server version: 5.5.-log MySQL Community Server (GPL)Copyright (c) , , Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type ’help;’ or ’h’ for help. Type ’c’ to clear the current input statement.mysql--yeyz@localhost:(none) 15:31:05>>select * from yeyz.yeyz;+------+| id |+------+| 3 || 4 || 5 |+------+ rows in set (. sec)mysql--yeyz@localhost:(none) 15:31:16>>delete from yeyz.yeyz where id=;Query OK, row affected (. sec)mysql--yeyz@localhost:(none) 15:31:32>>select * from yeyz.yeyz;+------+| id |+------+| 3 || 4 |+------+ rows in set (. sec)

最終出現(xiàn)的結(jié)果可想而知,一個(gè)usage權(quán)限的用戶(hù),對(duì)數(shù)據(jù)庫(kù)總的表進(jìn)行了update操作,而且還成功了。這一切得益于我們delete from mysql.user的操作,這種操作雖然從user表里面刪除了記錄,但是當(dāng)這條記錄的host是%時(shí),如果重新創(chuàng)建一個(gè)同名的新用戶(hù),此時(shí)新用戶(hù)將會(huì)繼承以前的用戶(hù)權(quán)限,從而使得用戶(hù)權(quán)限控制失效,這是很危險(xiǎn)的操作,盡量不要執(zhí)行。

再開(kāi)看看drop的方法刪除用戶(hù)

首先,我們刪除掉剛才的那兩個(gè)用戶(hù),然后使用show grants for語(yǔ)句查看他們的權(quán)限:

mysql ::>>drop user yeyz@’%’;Query OK, rows affected (0.00 sec)mysql ::>>drop user yeyz@’localhost’;Query OK, rows affected (0.00 sec)mysql ::>>mysql ::>>show grants for yeyz@’%’;ERROR (): There is no such grant defined for user ’yeyz’ on host ’%’mysql ::>>show grants for yeyz@’localhost’;ERROR (): There is no such grant defined for user ’yeyz’ on host ’192.168.18.%’

可以看到,權(quán)限已經(jīng)完全刪除了,此時(shí)我們重新創(chuàng)建一個(gè)只有select權(quán)限的用戶(hù):

mysql ::>>GRANT SELECT ON *.* TO ’yeyz’@’localhost’ IDENTIFIED BY PASSWORD ’*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9’;Query OK, rows affected (. sec)

我們使用這個(gè)用戶(hù)登錄到數(shù)據(jù)庫(kù)服務(wù),然后嘗試進(jìn)行select、update以及create操作,結(jié)果如下:

[dba_mysql@tk-dba-mysql-stat-10-104 ~]$ /usr/local/mysql/bin/mysql -uyeyz --socket=/data/mysql_4306/tmp/mysql.sock --port=4306 -p -hlocalhostEnter password: Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is Server version: 5.5.19-log MySQL Community Server (GPL)Copyright (c) , , Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type ’help;’ or ’h’ for help. Type ’c’ to clear the current input statement.mysql ::>>select * from yeyz.yeyz;+------+| id |+------+| || || |+------+ rows in set (0.00 sec)mysql ::>>update yeyz.yeyz set id= where id=;ERROR (): UPDATE command denied to user ’yeyz’@’localhost’ for table ’yeyz’mysql ::>>create table test (id int);ERROR (D000): No database selectedmysql ::>>create table yeyz.test (id int);ERROR (): CREATE command denied to user ’yeyz’@’localhost’ for table ’test’

可以發(fā)現(xiàn),這個(gè)用戶(hù)只可以進(jìn)行select操作,當(dāng)我們嘗試進(jìn)行update操作和create操作的時(shí)候,系統(tǒng)判定這種操作沒(méi)有權(quán)限,直接拒絕了,這就說(shuō)明使用drop user方法刪除用戶(hù)的時(shí)候,會(huì)連通db表和權(quán)限表一起清除,也就是說(shuō)刪的比較干凈,不會(huì)對(duì)以后的用戶(hù)產(chǎn)生任何影響。

結(jié)論:

當(dāng)我們想要?jiǎng)h除一個(gè)用戶(hù)的時(shí)候,盡量使用drop user的方法刪除,使用delete方法可能埋下隱患,下次如果創(chuàng)建同名的用戶(hù)名時(shí),權(quán)限控制方面存在一定的問(wèn)題。

這個(gè)演示也解決了一些新手朋友們的一個(gè)疑問(wèn):為什么我的用戶(hù)只有usage權(quán)限,卻能訪問(wèn)所有數(shù)據(jù)庫(kù),并對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作?這個(gè)時(shí)候,你需要看看日志,查詢(xún)自己有沒(méi)有進(jìn)行過(guò)delete from mysql.user的操作,如果有,這個(gè)問(wèn)題就很好解釋了。

以上就是MySQL兩種刪除用戶(hù)語(yǔ)句的區(qū)別(delete user和drop user)的詳細(xì)內(nèi)容,更多關(guān)于MySQL 刪除用戶(hù)的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 快干水泥|桥梁伸缩缝止水胶|伸缩缝装置生产厂家-广东广航交通科技有限公司 | 深圳法律咨询【24小时在线】深圳律师咨询免费 | 自动检重秤-动态称重机-重量分选秤-苏州金钻称重设备系统开发有限公司 | 钢木实验台-全钢实验台-化验室通风柜-实验室装修厂家-杭州博扬实验设备 | 中央空调维修、中央空调保养、螺杆压缩机维修-苏州东菱空调 | 超声波分散机-均质机-萃取仪-超声波涂料分散设备-杭州精浩 | 保健品OEM贴牌代加工厂家_德州健之源| 青岛成人高考_山东成考报名网 | 拖链电缆_柔性电缆_伺服电缆_坦克链电缆-深圳市顺电工业电缆有限公司 | 北京网络营销推广_百度SEO搜索引擎优化公司_网站排名优化_谷歌SEO - 北京卓立海创信息技术有限公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 分光色差仪,测色仪,反透射灯箱,爱色丽分光光度仪,美能达色差仪维修_苏州欣美和仪器有限公司 | 河北凯普威医疗器材有限公司,高档轮椅系列,推车系列,座厕椅系列,协步椅系列,拐扙系列,卫浴系列 | 车充外壳,车载充电器外壳,车载点烟器外壳,点烟器连接头,旅行充充电器外壳,手机充电器外壳,深圳市华科达塑胶五金有限公司 | 喷播机厂家_二手喷播机租赁_水泥浆洒布机-河南青山绿水机电设备有限公司 | 北京四合院出租,北京四合院出售,北京平房买卖 - 顺益兴四合院 | 吹塑加工_大型吹塑加工_滚塑代加工-莱力奇吹塑加工有限公司 | 光栅尺_Magnescale探规_磁栅尺_笔式位移传感器_苏州德美达 | 万博士范文网-您身边的范文参考网站Vanbs.com | 健康管理师报考条件,考试时间,报名入口—首页 | 诗词大全-古诗名句 - 古诗词赏析 | SDG吸附剂,SDG酸气吸附剂,干式酸性气体吸收剂生产厂家,超过20年生产使用经验。 - 富莱尔环保设备公司(原名天津市武清县环保设备厂) | 楼承板-开闭口楼承板-无锡海逵楼承板 | 交变/复合盐雾试验箱-高低温冲击试验箱_安奈设备产品供应杭州/江苏南京/安徽马鞍山合肥等全国各地 | 婚博会2024时间表_婚博会门票领取_婚博会地址-婚博会官网 | 薄壁轴承-等截面薄壁轴承生产厂家-洛阳薄壁精密轴承有限公司 | 耐驰泵阀管件制造-耐驰泵阀科技(天津)有限公司 | 酸度计_PH计_特斯拉计-西安云仪 纯水电导率测定仪-万用气体检测仪-低钠测定仪-米沃奇科技(北京)有限公司www.milwaukeeinst.cn | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 皮带输送机-大倾角皮带输送机-皮带输送机厂家-河南坤威机械 | 盘装氧量分析仪-防爆壁挂氧化锆分析仪-安徽吉帆仪表有限公司 | 钢绞线万能材料试验机-全自动恒应力两用机-混凝土恒应力压力试验机-北京科达京威科技发展有限公司 | 压接机|高精度压接机|手动压接机|昆明可耐特科技有限公司[官网] 胶泥瓷砖胶,轻质粉刷石膏,嵌缝石膏厂家,腻子粉批发,永康家德兴,永康市家德兴建材厂 | 苏州防水公司_厂房屋面外墙防水_地下室卫生间防水堵漏-苏州伊诺尔防水工程有限公司 | 3A别墅漆/3A环保漆_广东美涂士建材股份有限公司【官网】 | 济南铝方通-济南铝方通价格-济南方通厂家-山东鲁方通建材有限公司 | 斗式提升机,斗式提升机厂家-淄博宏建机械有限公司 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 电加热导热油炉-空气加热器-导热油加热器-翅片电加热管-科安达机械 | 商标转让-购买商标专业|放心的商标交易网-蜀易标商标网 |