MySQL建立使用者和分配許可權

2021-10-12 02:49:47 字數 3409 閱讀 4866

回顧今天的資料庫實驗⊂(ο・㉨・ο)⊃

先新建乙個測試資料庫

再建立個表填些資料

檢視使用者並沒有直接的sql語句,而是進入 mysql 資料庫的 user 表(這個mysql庫和user表都是一開始就有的),直接用 select * from user;來檢視有什麼使用者

use mysql;

select

*from

user

;

create

user

'user_name'@'host' identified by 'password';

建立不同限制的賬戶

-- 建立賬戶,"%"是無登入限制的,「123」是密碼

create

user

'liwker'@'%

' identified by '

123';

-- "localhost"是限制為本地登入

create user 'liwker'@'localhost' identified by '

123';

-- 這個是限制 ip 為 10.11.20.30 的主機訪問

create user 'liwker'@'

10.11

.20.30

' identified by '

123';

grant

privileges

on databasename.tablename to

'username'

@'host'

;

為賬戶分配不同的許可權

-- liwker庫的student表的 唯讀許可權 分配給 liwker 賬戶

grant

select

on liwker.student to liwker@'%

';-- liwker庫(所有表)的 多個許可權 分配給 liwker 賬戶

grant select,insert,delete,update on liwker.* to liwker@'%';

-- liwker庫的 所有許可權 分配給 liwker 賬戶

grant all on liwker.* to liwker@'%';

-- 所有庫的 所有許可權 分配給 liwker 賬戶

grant all on *.* to liwker@'

%';-- 重新整理許可權

flush privileges

;

許可權列表:可根據上面的許可權字段 為使用者分配相應的許可權

注意:

用以上命令授權的使用者不能給其他使用者授權,如果想這個使用者能夠給其他使用者授權,就要在後面加上 with grant option 如:

grant

allon*.

*to'liwker'

@'%'

with

grant

option

;

補充 為使用者建立資料庫:

create

database basename default

charset utf8 collate utf8_general_ci;

drop

user

'username'

@'host'

;

set password for

'username'@'host' = password('newpassword');

-- 如果是設定當前使用者的密碼

set password = password('newpassword')

;

-- **許可權,格式和分配差不多,grant -> revoke , to -> from

revoke

select

on liwker.student from liwker@'%'

;

但注意:則用revoke select on liwker.student to liwker@'%';是不能撤銷使用者 liwker 對 liwker.student 中的 select 權利的。

反過來grant select on liwker.student to liwker@'%';授予權力

revoke select on *.* to liwker@'%';也是不能用來撤銷使用者 liwker 對 liwker 庫的 student 表的select 權利的

先建立乙個新賬戶

再給他分配一些操作許可權

接下來,就開啟cmd用新賬戶測試一下

先登入這個賬戶

可以看到除了預設資料庫,只能看到分配給的資料庫和表

用分配給的不同sql語句測試一下

再試一試沒許可權的

這時,我們可以在管理臺給他新增這個許可權

在測試台重新試一試剛剛的 delete

再試一試**許可權,管理臺** delete 許可權

測試台,這下就不行了

最後就試一試刪除這個賬戶

成功。

mysql 建立使用者 分配許可權

mysql建立使用者的方法分成三種 insert user表的方法 create user的方法 grant的方法。1 通過create user命令進行建立使用者 指令碼 create user username host identified by password 其中密碼是可選項 例子 cr...

mysql建立使用者並分配許可權

mysql u root p 提示輸入密碼,輸入密碼後回車,進入mysql命令列 create user test identified by 123456 test為使用者名稱,123456為密碼,表示任何電腦都可以訪問,如果只為本地使用者建立,則 改為localhost grant select...

Mysql命令建立使用者分配許可權

1 建立乙個資料庫abc mysql create database abc 2 選擇你所建立的資料庫 mysql use abc database changed 3 建立乙個資料庫表 首先看現在你的資料庫中存在什麼表 mysql show tables empty set 0.00 sec my...