MySQL使用者管理

來源:互聯網
上載者:User
 MySQL管理員應該知道如何設定MySQL使用者帳號,指出哪個使用者可以串連伺服器,從哪裡串連,串連後能做什麼。MySQL 3.22.11開始引入兩條語句使得這項工作更容易做:GRANT語句建立MySQL使用者並指定其許可權,而REVOKE語句刪除許可權。兩條語句扮演了mysql資料庫的前端角色,並提供與直接操作這些表的內容不同的另一種方法。CREATE和REVOKE語句影響4個表:授權表
 
內容
 
user 能串連伺服器的使用者以及他們擁有的任何全域許可權
 
db 資料庫級許可權
 
tables_priv 表級許可權
 
columns_priv 列級許可權
 
還有第5個授權表(host),但它不受GRANT和REVOKE的影響。
 
當你對一個使用者發出一條GRANT語句時,在user表中為該使用者建立一條記錄。如果語句指定任何全域許可權(系統管理權限或適用於所有資料庫的許可權),這些也記錄在user表中。如果你指定資料庫、表和列級許可權,他們被分別記錄在db、tables_priv和columns_priv表中。
 
用GRANT和REVOKE比直接修改授權表更容易些,然而,建議你閱讀一下《MySQL安全性指南》。這些表異常重要,而且作為一名管理員,你應該理解它們如何超越GRANT和REVOKE語句的功能水平。
 
在下面的章節中,我們將介紹如何設定MySQL使用者帳號並授權。我們也涉及如何撤權和從授權表中刪除使用者。
 
你可能也想考慮使用mysqlaccess和mysql_setpermission指令碼,它是MySQL分發的一部分,它們是Perl指令碼,提供GRANT語句的另一種選擇設定使用者帳號。mysql_setpermission需要安裝DBI支援。
 
1 建立使用者並授權
 
GRANT語句的文法看上去像這樣:
 
GRANT privileges (columns) ON what TO user IDENTIFIED BY "password" WITH GRANT OPTION 
 
要使用該語句,你需要填寫下列部分:
 
privileges
 
授予使用者的許可權,下表列出可用於GRANT語句的許可權指定符:
 
許可權指定符
 
許可權允許的操作
 
ALTER 修改表和索引
 
CREATE 建立資料庫和表
 
DELETE 刪除表中已有的記錄
 
DROP 拋棄(刪除)資料庫和表
 
INDEX 建立或拋棄索引
 
INSERT 向表中插入新行

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.