日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

MySQL兩種刪除用戶語句的區別(delete user和drop user)

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

Tip:

在MySQL中,我們經常需要創建用戶和刪除用戶,創建用戶時,我們一般使用create user或者grant語句來創建,create語法創建的用戶沒有任何權限,需要再使用grant語法來分配權限,而grant語法創建的用戶直接擁有所分配的權限。在一些測試用戶創建完成之后,做完測試,可能用戶的生命周期就結束了,需要將用戶刪除,而刪除用戶在MySQL中一般有兩種方法,一種是drop user,另外一種是delete from mysql.user,那么這兩種方法有什么區別呢?我們這里通過例子演示。

delete from mysql.user

首先,我們看看delete from mysql.user的方法。我們創建兩個用戶用來測試,測試環境是MySQL5.5版本,用戶名分別為yeyz@’%’和yeyz@’localhost’,創建用戶的語法如下:

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’@’%’ |+-----------------------------------------------------------------------------------------------------+

此時我們通過delete的方法手動刪除mysql.user表中的這兩個用戶,在去查看用戶表,我們發現:

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)

已經沒有這兩個yeyz的用戶了,此時我們使用show grants for命令查看剛才刪除的用戶,我們發現依舊是存在這個用戶的權限說明的:

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)

說明我們雖然從mysql.user表里面刪除了這個用戶,但是在db表和權限表里面這個用戶還是存在的,為了驗證這個結論,我們重新創建一個yeyz@localhost的用戶,這個用戶我們只給它usage權限,其他的權限我們不配置,如下:

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

這個時候,我們使用yeyz@localhost這個用戶去登陸數據庫服務,然后進行相關的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)

最終出現的結果可想而知,一個usage權限的用戶,對數據庫總的表進行了update操作,而且還成功了。這一切得益于我們delete from mysql.user的操作,這種操作雖然從user表里面刪除了記錄,但是當這條記錄的host是%時,如果重新創建一個同名的新用戶,此時新用戶將會繼承以前的用戶權限,從而使得用戶權限控制失效,這是很危險的操作,盡量不要執行。

再開看看drop的方法刪除用戶

首先,我們刪除掉剛才的那兩個用戶,然后使用show grants for語句查看他們的權限:

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.%’

可以看到,權限已經完全刪除了,此時我們重新創建一個只有select權限的用戶:

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

我們使用這個用戶登錄到數據庫服務,然后嘗試進行select、update以及create操作,結果如下:

[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’

可以發現,這個用戶只可以進行select操作,當我們嘗試進行update操作和create操作的時候,系統判定這種操作沒有權限,直接拒絕了,這就說明使用drop user方法刪除用戶的時候,會連通db表和權限表一起清除,也就是說刪的比較干凈,不會對以后的用戶產生任何影響。

結論:

當我們想要刪除一個用戶的時候,盡量使用drop user的方法刪除,使用delete方法可能埋下隱患,下次如果創建同名的用戶名時,權限控制方面存在一定的問題。

這個演示也解決了一些新手朋友們的一個疑問:為什么我的用戶只有usage權限,卻能訪問所有數據庫,并對數據庫進行操作?這個時候,你需要看看日志,查詢自己有沒有進行過delete from mysql.user的操作,如果有,這個問題就很好解釋了。

以上就是MySQL兩種刪除用戶語句的區別(delete user和drop user)的詳細內容,更多關于MySQL 刪除用戶的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
黄色精品视频| 国产精品一区二区三区av麻| 麻豆成人av在线| 国产日韩在线观看视频| 欧美日一区二区在线观看| 日本a级不卡| 国产精品久久久久久av公交车 | 精品一区二区三区四区五区| 欧美激情aⅴ一区二区三区 | 国产精品a级| 久久精品国产网站| 国产欧美一区二区三区精品酒店| 日韩一区自拍| 亚洲精品一区二区在线看| 欧美一区=区| 欧美欧美黄在线二区| 精品国产成人| 免费污视频在线一区| 99热精品在线观看| 日韩av一二三| 精品三区视频| 亚洲小说欧美另类婷婷| 激情综合自拍| 日本综合精品一区| 国产不卡精品在线| 国产午夜久久| 欧美三区不卡| 国产白浆在线免费观看| 在线国产一区二区| 日韩精品电影一区亚洲| 福利一区视频| 伊人影院久久| 国产伦精品一区二区三区视频| 欧美韩日一区| 另类激情亚洲| 麻豆成人在线观看| 欧美亚洲激情| 亚洲人成亚洲精品| 免费一级欧美片在线观看网站| 免费看av不卡| 亚洲毛片在线| 日韩电影在线视频| 日韩午夜视频在线| 中文字幕高清在线播放| 亚洲乱亚洲高清| 色爱综合网欧美| 日韩在线观看一区二区| 国产精品久久久久久久久久久久久久久| 日韩电影二区| 亚洲日产国产精品| 欧美二三四区| 日韩和欧美一区二区三区| 国产一区二区三区四区五区| 香蕉久久夜色精品国产| 国产成人久久精品麻豆二区| 一级成人国产| 色吊丝一区二区| 国产情侣久久| 女同性一区二区三区人了人一| 国产精品手机在线播放| 亚洲激情中文在线| 精品久久99| 日韩欧美中文字幕电影| 欧美~级网站不卡| 另类综合日韩欧美亚洲| 日韩精品一区第一页| 欧美成人a交片免费看| 中文字幕亚洲影视| 日韩精品免费一区二区三区| 国产亚洲一卡2卡3卡4卡新区| av一区二区高清| 成人一区而且| 国产日韩欧美三区| 蜜桃av一区二区三区电影| 日韩不卡视频在线观看| 国产精品15p| 亚洲精品自拍| 亚洲免费观看| 日本高清不卡一区二区三区视频 | 精品国产成人| 亚洲乱码久久| 好吊一区二区三区| 91综合视频| 国产精品视频一区二区三区四蜜臂 | 日韩高清三区| 夜夜嗨一区二区| 91精品xxx在线观看| 欧美成a人片免费观看久久五月天| 亚洲香蕉久久| 激情欧美日韩一区| 97精品视频在线看| 国产乱人伦丫前精品视频| 亚洲一区二区日韩| 久久av在线| 欧美丝袜一区| 久久久成人网| 日韩精品电影| 色一区二区三区| 97精品97| 日韩黄色大片| 亚洲免费福利| av资源亚洲| 伊人久久av| а√天堂8资源中文在线| 国产乱人伦精品一区| 日韩1区2区日韩1区2区| 亚洲毛片网站| 日本不卡视频一二三区| 日韩在线麻豆| 日本欧美在线| 日本aⅴ亚洲精品中文乱码| 蜜臀久久久99精品久久久久久| 国产视频一区三区| 国产亚洲在线观看| 亚洲欧美日韩专区| 久久福利一区| 国产精品日韩久久久| 美女精品网站| 日韩在线播放一区二区| 亚洲欧美日韩国产综合精品二区 | 国产伦理久久久久久妇女| 清纯唯美亚洲综合一区| 久久国产生活片100| 国产亚洲精品精品国产亚洲综合| 日韩精品视频网| 91精品在线免费视频| 日韩va亚洲va欧美va久久| 91嫩草精品| 国产精品久久久免费| 国产精品115| 国产乱人伦精品一区| 麻豆精品久久久| 精品精品国产三级a∨在线| 中文字幕在线视频网站| www成人在线视频| 九一国产精品| 亚洲欧美日韩国产一区| 亚洲精品乱码久久久久久蜜桃麻豆| 日韩有码av| 麻豆精品在线| 91精品一区二区三区综合在线爱 | 今天的高清视频免费播放成人| 亚洲综合日韩| 亚洲色图国产| 国产欧美三级| 中文在线中文资源| 欧美日韩国产亚洲一区| 亚洲精一区二区三区| 欧美精品观看| a天堂资源在线| 好吊日精品视频| 日韩福利在线观看| 高清在线一区| 国产女优一区| 国产精品日本一区二区三区在线| 国产a亚洲精品| 波多野结衣一区| 日韩综合一区二区| 麻豆视频久久| 久久久久国产一区二区| 影院欧美亚洲| 人人精品久久| 青青青免费在线视频| 亚洲专区一区| 国产精品毛片aⅴ一区二区三区| 国产高潮在线| 久热re这里精品视频在线6| 国产欧美一区二区三区米奇| 欧洲av不卡| 日韩在线一二三区| 欧美经典一区| 久久网站免费观看| 亚洲毛片网站| 久久精品国产福利| 最新日韩欧美| 久久精品系列| 亚洲欧美日本日韩| 韩国女主播一区二区三区| 99国产精品99久久久久久粉嫩| 国产精品免费不| 日韩午夜免费| 欧美黄色一区二区| 91成人精品| 久久精品女人| 免费的成人av| 日韩一区自拍| 国产区精品区| 亚洲经典在线| 精品国内亚洲2022精品成人| 国产在线成人| 欧美精品导航| 蜜臀av一区二区在线免费观看| 国产va在线视频| 日韩国产成人精品| 久久视频精品| 国产精品成人自拍| 视频一区二区国产| 岛国av在线播放| 久久激情综合网| 国产精品婷婷|