MySQL 許可權管理

2021-09-27 09:20:33 字數 1883 閱讀 4928

【%、localhost、'127.0.0.1'】

%表示允許遠端登入,localhost表示只允許本機登入,'127.0.0.1'表示只允許本機ip為'127.0.0.1'的登入。

【檢視mysql使用者許可權】

show grants for syy@'localhost'; // 如果使用者名稱後面不接@'localhost',則預設是使用者名稱@'%'的形式。

【刪除mysql使用者】

#刪除了使用者,對應的許可權也沒有了!

drop user  syy@'%';

【撤銷mysql使用者許可權】

#撤銷使用者的所有許可權

revoke all privileges on  `test`.* from  'syy'@'%';

#撤銷使用者的grant許可權

revoke grant option on  `test`.* from  'syy'@'%';

【新建mysql使用者】

create user  syy@'%';

# 也可以建立使用者時直接設定密碼

create user  syy@'%' identified by '123456';

【mysql使用者授權】

#授予指定的許可權(注意:授予指定許可權之前,一定要撤銷使用者的all許可權,否則這個使用者還是all許可權。)

grant 

select, insert, update, delete, create, drop, index, alter , 

create temporary tables, create view, event, trigger, show view, create routine, alter routine, execute 

on  `test`.* to  'syy'@'%';

#只授予登入許可權

grant usage on  `test`.* to  'syy'@'%';

# 授予所有許可權。all允許做任何事(和root一樣),usage只允許登入,其它什麼也不允許做。

grant all on `test`.* to 'syy'@'%'

# 授予所有許可權、以及grant許可權

grant all on `test`.* to 'syy'@'%' with grant option;(with grant option表示授予grant許可權,一般不授予這個許可權。)

#一句sql實現新建mysql使用者並授權

grant all on test.* to 'syy'@'%' identified by '123456' with grant option;

注釋: 其中 test 為資料庫 

grant命令說明:

all privileges 是表示所有許可權,你也可以使用select、update等許可權。

on 用來指定許可權針對哪些庫和表。

*.* 中前面的*號用來指定資料庫名,後面的*號用來指定表名。

to 表示將許可權賦予某個使用者。

syy@』localhost』

表示jack使用者,@後面接限制的主機,可以是ip、ip段、網域名稱以及%,%表示任何地方。注意:這裡%有的版本不包括本地,以前碰到過給某個使用者設定了%允許任何地方登入,但是在本地登入不了,這個和版本有關係,遇到這個問題再加乙個localhost的使用者就可以了。

identified by 指定使用者的登入密碼。

with grant option 這個選項表示該使用者可以將自己擁有的許可權授權給別人。注意:經常有人在建立操作使用者的時候不指定with grant option選項導致後來該使用者不能使用grant命令建立使用者或者給其它使用者授權。

備註:可以使用grant重複給使用者新增許可權,許可權疊加,比如你先給使用者新增乙個select許可權,然後又給使用者新增乙個insert許可權,那麼該使用者就同時擁有了select和insert許可權。

MySQL許可權管理

本文主要講述的是mysql grant命令的例項演示,文中的mysql grant命令的實際操作主要是在mysql 5.0 及以上的相關版本上執行,下面就是對其具體操作步驟的描述,望你在瀏覽之後會有所收穫。mysql 賦予使用者許可權命令的簡單格式可概括為 grant 許可權 on 資料庫物件 to...

mysql 許可權管理

1.新增使用者 方法一 create user wangda localhost identified by password 000000 說明 建立乙個本地的使用者,使用者名為 wangda 密碼為 000000 如果密碼為空,則 identified by password 000000 這個...

mysql許可權管理

mysqladmin u root p password leftpassword 無密碼的話直接回車 任意主機登入host換成 create user username host identified by password privileges all 代表所有許可權 表示全部的資料庫 gran...