MySQL權(quán)限USAGE和ALL PRIVILEGES的用法
USAGE
含義:USAGE
權(quán)限是一個非常基礎(chǔ)的權(quán)限,它實際上并不賦予用戶執(zhí)行任何數(shù)據(jù)庫操作的權(quán)限,如查詢、插入、更新或刪除數(shù)據(jù)等。它的主要目的是允許用戶連接到MySQL服務(wù)器,但除此之外沒有其他操作權(quán)限。當(dāng)你只想讓用戶能夠登錄到數(shù)據(jù)庫,而不希望他們進行任何數(shù)據(jù)操作時,就會使用這個權(quán)限。
用法:通常在創(chuàng)建用戶時,如果你不想立刻指定具體的權(quán)限,而又希望用戶能夠登錄驗證,可以使用USAGE
權(quán)限。創(chuàng)建用戶不授予權(quán)限時,默認為USAGE
權(quán)限。例如:
CREATE USER 'limited_user'@'localhost' IDENTIFIED BY 'password';
ALL PRIVILEGES
含義:ALL PRIVILEGES
代表授予所有可能的權(quán)限,包括但不限于對數(shù)據(jù)庫的創(chuàng)建、刪除、修改權(quán)限,對表的數(shù)據(jù)操作權(quán)限(如SELECT、INSERT、UPDATE、DELETE),以及執(zhí)行存儲過程、管理用戶等高級權(quán)限。簡而言之,擁有ALL PRIVILEGES
的用戶幾乎可以執(zhí)行數(shù)據(jù)庫中的任何操作。
用法:當(dāng)你想要給某個用戶分配全面的數(shù)據(jù)庫管理權(quán)限時,就會使用ALL PRIVILEGES
。這通常是為數(shù)據(jù)庫管理員或者需要廣泛操作權(quán)限的用戶準(zhǔn)備的。例如:
GRANT ALL PRIVILEGES ON *.* TO 'admin_user'@'localhost' IDENTIFIED BY 'password';
這里,admin_user
被賦予了對所有數(shù)據(jù)庫和表的所有權(quán)限。
mysql中all privileges包含哪些權(quán)限
mysql> grant all privileges on test.* to 'ybb'@'%' identified by 'ybb'; Query OK, 0 rows affected (0.07 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> select host,user,password from mysql.user where user='ybb' and host='%'; +-----------+---------+-------------------------------------------+ | host | user | password | +-----------+---------+-------------------------------------------+ | % | ybb | *C85EE1EAA8E69C43CE790C4CFFCF1ED2F88039EB | +-----------+---------+-------------------------------------------+ 1 rows in set (0.00 sec) mysql> show grants for ybb; +---------------------------------------------------------------------------------------------------+ | Grants for ybb@% | +---------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'ybb'@'%' IDENTIFIED BY PASSWORD '*C85EE1EAA8E69C43CE790C4CFFCF1ED2F88039EB' | | GRANT ALL PRIVILEGES ON `test`.* TO 'ybb'@'%' | +---------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) mysql> revoke insert on test.* from ybb@'%'; Query OK, 0 rows affected (0.00 sec) mysql> show grants for ybb; +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Grants for ybb@% | +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'ybb'@'%' IDENTIFIED BY PASSWORD '*C85EE1EAA8E69C43CE790C4CFFCF1ED2F88039EB' | | GRANT SELECT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `test`.* TO 'ybb'@'%' | +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) mysql>
從上可以看出all privileges包含以下權(quán)限:
select, insert, update, delete, create, drop, references, index, alter, create temporary tables, lock tables, execute, create view, show view, create routine, alter routine, event, trigger
注意點
- 授予
ALL PRIVILEGES
時需謹慎,因為它給予了用戶極大的權(quán)限,可能對數(shù)據(jù)庫安全構(gòu)成威脅。 USAGE
雖然看起來權(quán)限很有限,但在某些場景下非常有用,比如僅為用戶提供驗證連接的能力,而不涉及數(shù)據(jù)操作,可以作為一種安全實踐。- 在實際操作中,應(yīng)遵循最小權(quán)限原則,即只給予執(zhí)行任務(wù)所需的最小必要權(quán)限,以保障數(shù)據(jù)庫的安全性。
到此這篇關(guān)于MySQL權(quán)限USAGE和ALL PRIVILEGES的用法的文章就介紹到這了,更多相關(guān)MySQL權(quán)限USAGE和ALL PRIVILEGES內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
dbeaver如何導(dǎo)出mysql數(shù)據(jù)庫
DBeaver導(dǎo)出MySQL數(shù)據(jù)庫的簡便方法:右鍵點擊表選擇“Tools”->“Dump database”,設(shè)定輸出文件夾(例如桌面),點擊開始即可導(dǎo)出SQL文件,此方法基于個人經(jīng)驗,供參考2024-10-10MySQL默認值(DEFAULT)和非空約束(NOT NULL)的實現(xiàn)
本文主要介紹了MySQL默認值(DEFAULT)和非空約束(NOT NULL)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05mysql把一個表某個字段的內(nèi)容復(fù)制到另一張表的某個字段的SQL語句寫法
有時候,我們需要復(fù)制某個字段一整列的數(shù)據(jù)到另外一個新的字段中,或是需要把某個表的某個字段的值跨表復(fù)制到另一個表中的某個字段,本文就羅列了一些SQL語句寫法,需要的朋友可以參考下2014-04-04MySQL limit分頁大偏移量慢的原因及優(yōu)化方案
這篇文章主要介紹了MySQL limit分頁大偏移量慢的原因及優(yōu)化方案,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下2020-11-11