天天看點

MySQL深入05-使用者管理

使用者帳戶組成

使用者名+主機名,即username@hostname,如repluser@'172.16.%.%'

MySQL的權限類别

管理類

1

2

3

4

5

6

7

8

9

10

11

<code>create temporary tables </code><code># 允許建立臨時表</code>

<code>create user </code><code># 允許create,drop,rename帳戶</code>

<code>file</code> <code># 允許讀寫檔案,如導入導出資料庫</code>

<code>lock tables </code><code># 允許鎖表</code>

<code>process </code><code># 允許使用show processlist指令</code>

<code>reload </code><code># 允許使用flush和reset權限</code>

<code>replication client </code><code># 允許查詢複制集的從伺服器</code>

<code>replication slave </code><code># 可作為複制從伺服器</code>

<code>show database </code><code># 顯示資料庫,預設存在此權限</code>

<code>shudown </code><code># 關閉mysqld伺服器</code>

<code>super </code><code># 其它管理類權限</code>

庫級别和表級别

<code>alter</code>

<code>alter routine</code>

<code>create </code><code># 建立表和庫</code>

<code>create routing</code>

<code>create view</code>

<code>delete</code>

<code>drop</code>

<code>execute</code>

<code>grant option </code><code># 轉贈管理權限</code>

<code>index</code>

<code>show view</code>

資料操作類(表級别)

<code>select</code>

<code>insert</code>

<code>update</code>

字段級别類

<code>select</code> <code>(col1,…)</code>

<code>update (col1,…)</code>

<code>insert (col1,…)</code>

所有權限

<code>all [privileges]</code>

跟使用者授權相關的表:都在mysql資料庫中

<code>db </code><code># 庫級别權限</code>

<code>host </code><code># 主機級别權限,已廢棄</code>

<code>tables_priv </code><code># 表級别權限</code>

<code>columns_priv </code><code># 列級别的權限</code>

<code>procs_priv </code><code># 存儲過程和存儲函數相關的權限</code>

<code>proxies_priv </code><code># 代理使用者權限</code>

使用者帳号管理

<code>create user </code><code># 建立使用者</code>

<code>文法:create user Username@Hostname [identified by ‘’];</code>

<code>show grants </code><code>for</code> <code>‘[email protected].%.%’; </code><code># 顯示權限</code>

<code>drop user </code><code># 删除使用者</code>

<code>rename user </code><code># 重命名使用者</code>

<code>rename user ‘testuser’@’172.16.%.%’ to ‘tuser’@’172.16.%.%’</code>

<code>set</code> <code>password </code><code># 給使用者設定密碼</code>

<code>set</code> <code>password [</code><code>for</code> <code>Username] = password(‘’);</code>

使用者權限管理

grant:授權

<code>文法:grant Priv_Type on [Object_Type] Priv_Level to Username@Hostname [identified by ‘Password’] [require SSL] [with With_Option,…]</code>

<code>Priv_Type </code><code># 權限類别,可選參數有all,select,update,replication slave等</code>

<code>Object_Type </code><code># 授權對象,參數有table | function | procedure,預設為table</code>

<code>Priv_Level </code><code># 授權級别,參數有 * | *.* | db_name.* | db_name.tbl_name | tbl_name | db_name.routing_name</code>

<code>With_Option </code><code># 附加選項</code>

<code>===grant option </code><code># 賦予授權權限,即可将自身的權限再賦予其它使用者</code>

<code>===max_queries_per_hour </code><code># 設定最大查詢頻率</code>

<code>===max_updates_per_hour </code><code># 設定最大更新頻率</code>

<code>===max_connections_per_hour </code><code># 設定最大連接配接速率</code>

<code>===max_user_connections </code><code># 設定單來源IP最大連接配接數</code>

revoke:取消授權

<code>文法:revoke Priv_Type on [Object_Type] Priv_Level from Username@Hostname</code>

<code># 如:revoke all privileges,grant option from Username@Hostname</code>

本文轉自 xxrenzhe11 51CTO部落格,原文連結:http://blog.51cto.com/xxrenzhe/1399157,如需轉載請自行聯系原作者