熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> MySQL >> 正文

MySQL數據庫的用戶帳號管理基礎知識

2013-11-23 21:02:32  來源: MySQL 

  MySQL管理員應該知道怎樣通過指定哪些用戶可連接到服務器從哪裡進行連接以及在連接時做什麼來設置MySQL用戶賬號MySQL引入了兩個更容易進行這項工作的語句GRANT 語句創建MySQL用戶並指定其權限REVOKE 語句刪除權限這兩個語句充當mysql數據庫中的授權表的前端並提供直接操縱這些表內容的可選擇的方法GRANT 和REVOKE 語句影響以下四個表
  
  授權表 內容
  
  user 可連接到服務器的用戶和他們擁有的任何全局特權
  
  db 數據庫級的特權
  
  tables _ priv 表級特權
  
  c o l um n s _ priv 列級特權
  
  還有第五個授權表( host)但它不受GRANT 或REVOKE的影響
  
  當您為某個用戶發布GRANT 語句時應在user表中為該用戶創建一個項如果該語句指定了所有全局特權(管理權限或用於所有數據庫的權限)則這些指定也被記錄在user表中如果指定了數據庫表或列的權限它們將記錄在dbtables_priv 和columns_priv表中
  
  使用GRANT 和REVOKE語句比直接修改授權表更容易但是建議您最好通過閱讀第章來補充本章的內容章中詳細討論了授權表這些表非常重要作為一位管理員應該了解這些表是怎樣在GRANT 和REVOKE 語句級上工作的
  
  本節下面的部分將討論如何設置MySQL用戶的賬號和授權還將介紹如何取消權限以及從授權表中刪除全部用戶並且將考慮一個困擾許多新的MySQL管理員的難題
  
  您還要考慮使用mysqlaccess 和mysql_setpermission 腳本它們是MySQL分發包的組成部分這些是Perl 的腳本它們提供了設置用戶賬號的GRANT 語句的代用品mysql_setpermission 需要具有DBI 的支持環境
  
  創建新用戶和授權
  
  GRANT 語句的語法如下
  
  GRANT privileges (columns)
  
  ON what
  
  TO user IDENTIFIEDBY password
  
  WITH GRANT OPTION
  
  要使用該語句需要填寫以下部分
  
  privileges 分配給用戶的權限下表列出了可在GRANT 語句中使用的權限說明符
  
  權限說明符權限允許的操作
  
  上表顯示的第一組權限說明符適用於數據庫表和列第二組說明符是管理特權通常這些權限的授予相當保守因為它們會影響服務器的操作(例如 SHUTDOWN 特權不是按每天來分發的權限)第三組說明符是特殊的ALL的意思是所有的權限而USAGE 的意思是無權限─即創建用戶但不授予任何的權限
  
  columns 權限適用的列這是可選的只來設置列專有的權限如果命名多於一個列則用逗號分開
  
  what 權限應用的級別權限可以是全局的(適用於所有數據庫和所有的表)數據庫專有的(適用於某個數據庫中的所有表)或表專有的可以通過指定一個C O L U M N S子句將權限授予特定的列
  
  user 使用權限的用戶它由用戶名和主機名組成在MySQL中不僅指定誰進行連接還要指定從哪裡連接它允許您擁有兩個帶有相同名字的從不同位置連接的用戶MySQL允許在它們之間進行區別並相互獨立地分配權限
  
  MySQL的用戶名就是您在連接到服務器時指定的名字該名字與您的UNIX 注冊名或Windows 名的沒有必然連系缺省設置時客戶機程序將使用您注冊的名字作為MySQL的用戶名(如果您不明確指定一個名字的話)但這只是一個約定有關將root作為可以操作一切MySQL的超級用戶名也是這樣就是一種約定您也可以在授權表中將此名修改成nobody然後作為nobody 用戶進行連接以執行需要超級用戶特權的操作
  
  password 分配給該用戶的口令這是可選的如果您不給新用戶指定IDENTIFIEDBY子句該用戶不分配口令(是非安全的)對於已有的用戶任何指定的口令將替代舊口令如果不指定新口令用戶的舊口令仍然保持不變當您確實要使用ID E N T I F I E DBY 時該口令串應該是直接量GRANT 將對口令進行編碼當用SET PA S S W O R D語句時不要使用PASSWORD() 函數
  
  WITH GRANT OPTION 子句是可選的如果包含該子句該用戶可以將GRANT 語句授予的任何權限授予其他的用戶可以使用該子句將授權的能力授予其他的用戶
From:http://tw.wingwit.com/Article/program/MySQL/201311/29478.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.