mysql 使用者許可權

2021-06-21 13:24:16 字數 2067 閱讀 9837

mysql 的4個許可權級別:

3個基本型別的許可權:

任何使用者都可以被賦予這3類許可權,但根據最少許可權原則,最好嚴格限定只將管理員型別的許可權賦予管理員。我們應該只賦予使用者他必須使用的資料庫和表的許可權。應為mysql這個資料庫是存放mysql所有的使用者名稱和密碼的地方,所不,不要將此庫的許可權賦予任何非管理員的使用者!

這三類許可權的清單如下:

grant 命令用來建立使用者並賦予他們許可權。命令格式如下:

grant

privileges [

colums]

on item

to user_name [identified by '

password']

[require

ssl_options]

[with [grant option |

limit_option] ]

privileges

由逗號分開的一組許可權。

[colums]

為每乙個列指定許可權,多列用逗號分隔

item

許可權應用與的表貨資料庫;  *.* :將許可權應用與所有的資料庫,及賦予「全域性許可權」; dbname.*:將許可權賦予資料庫中的全部表!dbname.tabame:將許可權賦予資料庫中的單個表;還可以通過tablename來指定特定的列! 如果在輸入命令時正在使用某個資料庫,tablename本身將被解釋為當前資料庫中的乙個表。

user_name

使用者登入mysql時所使用的名稱。user_name中可以包含一主機名,形如:user1@localhost ,[email protected]。這是一項非常有用的功能,因為來著不通域的使用者經常使用相同的名稱。這也提高了安全性,因為可以指定使用者從什麼地方連線到本機,甚至可以指定他們在特定的地方可以訪問哪些表和資料庫。

password

該使用者的密碼

require

指定使用者是否必須通過加密套接字連線,或者指定其他的ssl選項。

with grant option

如指定,表示允許指定的使用者向別人授予自己擁有的許可權!

我們也可以指定如下所示的with子句:

max_queries_per_hour

n   //  使用者每小時可以執行的查詢數量

max_updates_per_hour

n  // 使用者每小時可以執行的更新數量

max_connections_per_hour

n //使用者每小時可以連線的數量

在共享系統上限制單個使用者的負載是,這些子句非常有用

許可權儲存在mysql的5個系統表中,分別是:mysql.user、mysql.db、mysql.host、mysql.tables_priv和mysql.colums_pirv。做為grant命令的替代,可以直接修改這些表。

收回使用者的許可權,格式如下:

revoke

privileges [(

columns)]

on item

from user_name

如果給出了 with grant option 子句,可以按如下方式撤銷它(以及所有其他的許可權):

revoke all privileges,grant

from user_name

對使用者許可權做過修改後,記得用 flush privileges; 命令來更新許可權;

mysql配置使用者許可權 mysql使用者許可權配置

mysql使用者許可權配置 有什麼不對的地方請各位大神多多指教!1,檢視使用者表 mysql select user,password,host from mysql.user user 使用者名稱 password 密碼 加密 host 連線ip 2,開放遠端連線 vim etc mysql ma...

mysql使用者許可權時間 Mysql使用者許可權管理

1.檢視mysql使用者 select user,host,authentication string from mysql.user user host authentication string root localhost root b7d0cf7b6e2f root 127.0.0.1 ro...

mysql使用者和許可權 MySQL使用者及許可權知識梳理

一 賬號使用者賬號mysql使用者賬號組成 user host user 使用者名稱。mysql create user user host identified by pwd 使用者重新命名 mysql rename user old username to new username 刪除使用者 ...