程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MySQL中基本的用戶和權限管理方法小結

MySQL中基本的用戶和權限管理方法小結

編輯:關於MYSQL數據庫

MySQL 默認有個root用戶,但是這個用戶權限太大,一般只在管理數據庫時候才用。如果在項目中要連接 MySQL 數據庫,則建議新建一個權限較小的用戶來連接。

在 MySQL 命令行模式下輸入如下命令可以為 MySQL 創建一個新用戶:

CREATE USER username IDENTIFIED BY 'password';

新用戶創建完成,但是此刻如果以此用戶登陸的話,會報錯,因為我們還沒有為這個用戶分配相應權限,分配權限的命令如下:

GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';

授予username用戶在所有數據庫上的所有權限。

如果此時發現剛剛給的權限太大了,如果我們只是想授予它在某個數據庫上的權限,那麼需要切換到root 用戶撤銷剛才的權限,重新授權:

EVOKE ALL PRIVILEGES ON *.* FROM 'username'@'localhost';
GRANT ALL PRIVILEGES ON wordpress.* TO 'username'@'localhost' IDENTIFIED BY 'password';

甚至還可以指定該用戶只能執行 select 和 update 命令:

GRANT SELECT, UPDATE ON wordpress.* TO 'username'@'localhost' IDENTIFIED BY 'password';

這樣一來,再次以username登陸 MySQL,只有wordpress數據庫是對其可見的,並且如果你只授權它select權限,那麼它就不能執行delete 語句。

另外每當調整權限後,通常需要執行以下語句刷新權限:

FLUSH PRIVILEGES;

刪除剛才創建的用戶:

DROP USER username@localhost;

仔細上面幾個命令,可以發現不管是授權,還是撤銷授權,都要指定響應的host(即 @ 符號後面的內容),因為以上及格命令實際上都是在操作mysql 數據庫中的user表,可以用如下命令查看相應用戶及對應的host:

SELECT User, Host FROM user;

當然,這個表中還包含很多其它例如用戶密碼、權限設置等很多內容,操作時候尤其需要小心。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved