程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL 數據庫GRANT命令增添新用戶教程

MySQL 數據庫GRANT命令增添新用戶教程

編輯:MySQL綜合教程

在mysql中我們要增加除了root用戶之外的用戶的方法有很多種,你我們不太懂命令的最簡單的辦法就是直接使用圖形界面來操作,如phpmyadmin數據庫管理工具,如果你懂命令我們可以直接使用GRANT命令增添新用戶來操作。

GRANT語句增加新用戶:


(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)

格式:grant select on 數據庫.* to 用戶名@登錄主機 identified by “密碼”

例1

 

 代碼如下 復制代碼

shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost       IDENTIFIED BY 'something' WITH GRANT OPTION;

mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%"       IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;

mysql> GRANT USAGE ON *.* TO dummy@localhost;


直接通過發出INSERT語句增加同樣的用戶存取信息,然後告訴服務器再次裝入授權表:

 

 代碼如下 復制代碼

 

shell> mysql --user=root mysql mysql> INSERT INTO user VALUES('localhost','monty',PASSWORD('something'),         'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'),         'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

mysql> INSERT INTO user SET Host='localhost',User='admin',          Reload_priv='Y', Process_priv='Y';

mysql> INSERT INTO user (Host,User,Password)             VALUES('localhost','dummy',''); mysql> FLUSH PRIVILEGES;

為了使用GRANT語句設置個用戶的權限,運行這些命令:

 

 代碼如下 復制代碼
shell> mysql --user=root mysql mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP       ON bankaccount.*       TO custom@localhost       IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP       ON expenses.*       TO [email protected]       IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP       ON customer.*       TO custom@'%'       IDENTIFIED BY 'stupid';

通過直接修改授權表設置用戶權限,運行這些命令(注意,在結束時FLUSH PRIVILEGES):

 

 代碼如下 復制代碼

 

shell> mysql --user=root mysql mysql> INSERT INTO user (Host,User,Password)     VALUES('localhost','custom',PASSWORD('stupid'));

mysql> INSERT INTO user (Host,User,Password)     VALUES('server.domain','custom',PASSWORD('stupid')); mysql> INSERT INTO user (Host,User,Password)     VALUES('whitehouse.gov','custom',PASSWORD('stupid'));

mysql> INSERT INTO db     (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,     Create_priv,Drop_priv)     VALUES     ('localhost','bankaccount','custom','Y','Y','Y','Y','Y','Y'); mysql> INSERT INTO db     (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,     Create_priv,Drop_priv)     VALUES     ('whitehouse.gov','expenses','custom','Y','Y','Y','Y','Y','Y'); mysql> INSERT INTO db     (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,     Create_priv,Drop_priv)     VALUES('%','customer','custom','Y','Y','Y','Y','Y','Y');

mysql> FLUSH PRIVILEGES;

 
如果上面的代碼讓你看不清楚或看的頭暈的話我們可以利用phpmyadmin來修改密碼。

1、新建數據庫:

    進入phpmyadmin管理界面以後,找到如下文字“創建一個新的數據庫”,然後在下面填上要新建的數據庫的名稱,在後面的下拉列表中選擇數據庫的編碼,一般為“gb2312_chinese_bin”,點擊“創建”按鈕,這樣就新建了一個數據庫。

2、新建此數據庫的對應帳戶

    在phpmyadmin管理界面點擊“權限”,打開鏈接,點擊“添加新用戶”,在打開的頁面中會看到“登入信息”,輸入用戶名、主機(一般為本地:localhost)、密碼後,因為我們現在是要給單個用戶配置單個數據庫的權限,所以我們在這裡不選擇“全局權限”,然後點擊最下面的“執行”按鈕,這樣就新建了一個用戶名。

3、為新建的用戶添加此數據庫權限

    添加完用戶以後,管理界面的上方會提示“您已添加了一個新用戶”,我們現在就給新建的用戶添加權限,在下面找到“按數據庫指定權限”,然後點擊“在下列數據庫添加權限”後面的下拉列表,選擇數據庫,選擇數據下面的全部,然後選擇結構除了最下面三個以外的復選框,其他一律不選,然後點擊“執行”按鈕,這樣就配置好了這個用戶完全管理這個數據庫的權限了。

注:因為我們只是要給這個用戶管理這個數據庫的全部權限,但是沒有其他數據庫的管理權限,所以在配置權限的時候一定要注意。

附:在phpmyadmin中顯示的用戶權限都是英文的,我們在此附上中文翻譯:

數據:

    SELECT:允許讀取數據。

    INSERT:允許插入和替換數據。

    UPDATA:允許更改數據。

    DELETE:允許刪除數據。

    FILE:允許從文件中導入數據以及將數據導出至文件。

結構:

    CREATE:允許創建新數據庫和表。

    ALTER:允許修改現有表的結構。

    INDEX:允許創建和刪除索引。

    DROP:允許刪除數據庫和表。

    CREATE TEMPORARY TABLES:允許創建暫時表。

    CREATE VIEW:允許創建新的意見。

    SHOW VIEW:顯示創建的看法。

    CREATE ROUTINE:允許創建存儲過程。

    ALTER ROUTINE:允許改變和下降存儲過程。

    EXECUTE:允許許執行存儲過程。

管理:

    GRANT:允許添加用戶和權限,而不允許重新載入權限表。

    SUPER:允許在達到最大允許數目時仍進行連接。

    PROCESS:允許查看進程列表中的完整查詢。

    RELOAD:允許重新載入服務器設置並刷新服務器的緩存。

    SHUTDOWN:允許關閉服務器。

    SHOW DATABASES:允許訪問完整的數據庫列表。

    LOCK TABLES:允許鎖住當前線索的表。

    REFERENCES:在此版本的 MySQL 中無效。

    REPLICATION CLIENT:用戶有權詢問附屬者/控制者在哪裡。

    REPLICATION SLAVE:回復附屬者所需。

    CREATE USER:允許創建,下降和重新命名的用戶帳戶。

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