如何在MySQL中建立新使用者並授予許可權

2021-09-02 19:17:42 字數 2085 閱讀 2700

mysql是一種開源資料庫管理軟體,可幫助使用者儲存,組織和以後檢索資料。它有多種選項可以為**和資料庫中的特定使用者授予細微差別的許可權 - 本教程將簡要介紹一些眾多選項。

在本教程中,將突出顯示使用者需要輸入或自定義的所有行!其餘的應該主要是複製和可接受的。

在mysql教程的第1部分中,我們以root使用者身份完成了mysql中的所有編輯,可以完全訪問所有資料庫。但是,如果可能需要更多限制,則可以使用自定義許可權建立使用者。

讓我們從在mysql shell中建立乙個新使用者開始:

create user 'newuser'@'localhost' identified by 'password';
注意:在本教程中在mysql shell中新增使用者時,我們將指定使用者的主機localhost而不是伺服器的ip位址。localhost是乙個主機名,意思是「這台計算機」,mysql專門處理這個特定的主機名:當有該主機的使用者登入mysql時,它將嘗試使用unix套接字檔案連線到本地伺服器。因此,localhost通常在計畫通過ssh連線到伺服器或執行本地mysql客戶端連線到本地mysql伺服器時使用。

此時,newuser無權對資料庫執行任何操作。事實上,即使newuser嘗試登入(使用密碼,密碼),他們也無法訪問mysql shell。

因此,首先要做的是為使用者提供他們所需資訊的訪問許可權。

grant all privileges on *.* to 'newuser'@'localhost';
此命令中的星號指的是它們可以訪問的資料庫和表(分別) - 此特定命令允許使用者讀取,編輯,執行和執行所有資料庫和表中的所有任務。

請注意,在此示例中,我們授予newuser對資料庫中所有內容的完全root訪問許可權。雖然這有助於解釋一些mysql概念,但對於大多數用例來說可能是不切實際的,並且可能會使您的資料庫的安全性處於高風險。

flush privileges;
您的更改現在將生效。

以下是使用者可以享受的其他常見可能許可權的簡短列表。

要為特定使用者提供許可權,您可以使用此語法框架:

grant type_of_permission on database_name.table_name to 『username』@'localhost』;
ps:一條授權命令可以配置多個許可權,許可權之間用英文逗號隔開:

"grant update, select on [database name].[table name] to 『[username]』@『localhost』;"

如果要授予它們訪問任何資料庫或任何表的許可權,請確保在資料庫名稱或表名稱的位置放置星號(*)。

每次更新或更改許可權時,請務必使用「重新整理許可權」命令。

如果您需要撤消許可權,則語法結構幾乎與授予許可權相同:

revoke type_of_permission on database_name.table_name from 『username』@『localhost』;
請注意,在撤消許可權時,語法要求您使用from,而不是to在授予許可權時使用。

您可以通過執行以下命令來檢視使用者的當前許可權:

show grants username
就像您可以使用drop刪除資料庫一樣,您可以使用drop完全刪除使用者:

drop user 『username』@『localhost』;
要測試新使用者,請鍵入以下內容登出:

quit
並在終端中使用此命令重新登入:

mysql -u [username] -p
完成本教程後,您應該了解如何新增新使用者並在mysql資料庫中授予他們各種許可權。從這裡開始,您可以繼續探索和試驗資料庫的不同許可權設定,或者您可能希望了解有關某些更高階別mysql配置的更多資訊。

Mysql建立新使用者

1.建立使用者 語法 create user username host identified by password 例子 create user dog localhost identified by 123456 create user pig 192.168.1.101 idendified...

Mysql建立新使用者

1.create user 語法 create user username host identified by password 例子 create user dog localhost identified by 123456 create user pig 192.168.1.101 iden...

MySQL建立新使用者

1 登入root使用者mysql u root p 輸入密碼 2 建立資料庫 create database 資料庫名 3 建立使用者 create user 資料庫名 localhost identified by 密碼 4 授權使用者 grant all privileges on 資料庫名.t...