新聞中心
MySQL是一種流行且廣泛使用的數(shù)據(jù)庫管理系統(tǒng),用于存儲(chǔ)和組織數(shù)據(jù)并允許用戶對其進(jìn)行檢索。它帶有大量選項(xiàng),可向用戶授予對表和數(shù)據(jù)庫的某些權(quán)限。

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)衡南,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
在本指南中,您將學(xué)習(xí)如何在MySQL數(shù)據(jù)庫中創(chuàng)建新用戶并授予權(quán)限。
如何在MySQL中創(chuàng)建新用戶
要?jiǎng)?chuàng)建新用戶,請首先登錄MySQL Shell。
cdcxhl.com@cdcxhl.com:~/www.cdcxhl.com$ mysql -u root -p
輸入sudo密碼,接著是輸入在設(shè)置MySQL數(shù)據(jù)庫時(shí)的密碼,然后按ENTER。此后,您將得到如下提示。
連接到MySQL Shell
要?jiǎng)?chuàng)建新用戶,請使用以下語法:
mysql> CREATE USER ‘newuser’@’localhost’ IDENTIFIED BY ‘password’;
例如,要在數(shù)據(jù)庫中創(chuàng)建一個(gè)名為“XWCX.NET”的新用戶,請調(diào)用以下命令:
mysql> CREATE USER ‘XWCX.NET’@’localhost’ IDENTIFIED BY ‘www.cdcxhl.com’;
需要牢記的幾點(diǎn)
當(dāng)在本地添加用戶時(shí),例如,在安裝MySQL的系統(tǒng)上,用戶的主機(jī)被指定為localhost,而不是IP地址。關(guān)鍵字’ localhost ‘翻譯成’這臺(tái)計(jì)算機(jī)’,MySQL對它的處理是獨(dú)一無二的。基本上,mysql客戶端使用localhost來建立與本地安裝的MySQL數(shù)據(jù)庫服務(wù)器的連接。
到目前為止,cdcxhl.com用戶沒有任何與數(shù)據(jù)庫交互的權(quán)限。 實(shí)際上,用戶甚至無法訪問MySQL Shell。
要授予用戶對所有數(shù)據(jù)庫(包括表)的完全訪問權(quán)限,請運(yùn)行。
mysql> GRANT ALL PRIVILEGES ON * . * TO ‘XWCX.NET’@’localhost’;
在上面的命令中,星號分別指向用戶可以訪問的數(shù)據(jù)庫和表。它授予用戶數(shù)據(jù)庫上的所有權(quán)限——讀、寫、編輯和執(zhí)行,包括跨其他數(shù)據(jù)庫和表執(zhí)行所有任務(wù)。
到目前為止,我們已經(jīng)授予用戶對數(shù)據(jù)庫的完全訪問權(quán)。雖然這有助于解釋MySQL概念,但通常不建議這樣做,因?yàn)樗赡軙?huì)對數(shù)據(jù)庫構(gòu)成安全風(fēng)險(xiǎn)。試想一下如果黑客得到了用戶的密碼會(huì)發(fā)生什么。在下一節(jié)中,我們將進(jìn)一步討論如何分配特定的權(quán)限。
當(dāng)您完成了對用戶的權(quán)限分配后,重新加載所有權(quán)限,如下所示,以便更改生效。
mysql> FLUSH PRIVILEGES;
如何授予不同的用戶權(quán)限
以下是你可以授予用戶的可能權(quán)限的分類:
- ALL PRIVILEGES – 如前所述,這授予MySQL用戶對特定數(shù)據(jù)庫的完全訪問權(quán)限。
- CREATE – 允許用戶創(chuàng)建新的數(shù)據(jù)庫或表。
- DROP – 使用戶可以刪除數(shù)據(jù)庫或用戶。
- INSERT – 允許用戶在表中插入行。
- DELETE – 允許用戶從表中刪除行。
- SELECT – 具有“ SELECT”權(quán)限,用戶能夠讀取表的內(nèi)容。
- UPDATE – 允許用戶更新表中的行。
- GRANT OPTION –用戶可以授予或刪除其他用戶的特權(quán)。
要授予特定用戶權(quán)限,請使用以下語法:
mysql> GRANT permission_type ON database_name.table_name TO ‘username’@’localhost’;
此外,你可以用一個(gè)星號符號為數(shù)據(jù)庫中的所有表分配權(quán)限,如下所示:
mysql> GRANT permission_type ON database_name.* TO ‘username’@’localhost’;
例如,要在數(shù)據(jù)庫linux_db的所有表上為’ cdcxhl.com ‘用戶分配SELECT權(quán)限,運(yùn)行以下命令。
mysql> GRANT SELECT ON linux_db.* TO ‘XWCX.NET’@’localhost’;
然后刷新權(quán)限,使更改生效。
mysql> FLUSH PRIVILEGES;
另外,您可以一次分配多個(gè)權(quán)限,方法是用逗號分隔它們。如下圖所示:
mysql> GRANT INSERT, UPDATE ON linux_db.* TO ‘XWCX.NET’@’localhost’;
向數(shù)據(jù)庫分配多個(gè)權(quán)限
如何撤銷MySQL權(quán)限
要撤消用戶的權(quán)限,請使用以下語法:
mysql> REVOKE permission_type ON database_name.table_name FROM ‘username’@’localhost’;
例如,要撤消用戶“XWCX.NET”的INSERT權(quán)限,請運(yùn)行命令。
mysql> REVOKE INSERT ON linux_db.* FROM ‘XWCX.NET’@’localhost’;
mysql> FLUSH PRIVILEGES;
撤消MySQL權(quán)限
要查看用戶當(dāng)前的權(quán)限,請執(zhí)行以下操作:
mysql> SHOW GRANTS FOR ‘username’@’localhost’;
從下面的輸出中,我們可以看到“xxvi”用戶已刪除了INSERT權(quán)限,而在linux_db數(shù)據(jù)庫上僅保留了SELECT和UPDATE權(quán)限。
mysql> SHOW GRANTS FOR ‘xxvi’@’localhost’;
檢查用戶MySQL權(quán)限
要測試使用新用戶登錄到MySQL shell,首先要注銷。
mysql> quit;
Bye
然后再次登錄。
cdcxhl.com@cdcxhl.com:~/www.cdcxhl.com$ sudo mysql -u cdcxhl.com -p
提供用戶密碼,然后按Enter鍵訪問該Shell程序。
要?jiǎng)h除用戶,請使用DROP命令,就像刪除數(shù)據(jù)庫時(shí)一樣。
mysql> DROP USER ‘username’@’localhost’;
總結(jié)
OK,希望到目前為止,您可以在MySQL數(shù)據(jù)庫服務(wù)器中創(chuàng)建用戶并輕松分配或撤消權(quán)限。
分享文章:創(chuàng)新互聯(lián)mysql教程:如何在MySQL中創(chuàng)建新用戶并授予權(quán)限
文章鏈接:http://www.5511xx.com/article/cdcsieo.html


咨詢
建站咨詢
