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

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


咨詢
建站咨詢
