MySQL知識整理2 使用者管理和許可權設定

2022-08-22 01:09:15 字數 2205 閱讀 2477

使用者許可權管理主要有以下作用: 1. 可以限制使用者訪問哪些庫、哪些表 2. 可以限制使用者對哪些表執行select、create、delete、delete、alter等操作 3. 可以限制使用者登入的ip或網域名稱 4. 可以限制使用者自己的許可權是否可以授權給別的使用者

1.檢視使用者

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

可以匯出形成csv檔案進行檢視:

如上圖,列出資料庫所有的使用者及許可權

使用者詳情的許可權列表請參考mysql官網說明:

2.建立使用者

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

例:

create user 'aaa' @ 'localhost' identified by '123456';

//表示建立的新使用者,名為aaa,這個新使用者密碼為123456,只允許本機登陸

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

//表示新建立的使用者,名為bbb,這個使用者密碼為123456,可以從其他電腦遠端登陸mysql所在伺服器

create user 'ccc' @ '%';

//表示新建立的使用者ccc,沒有密碼,可以從其他電腦遠端登陸

可見建立了使用者tom,萬用字元'%'表示可在遠端登陸,無密碼

3.授權使用者

grant privileges on databasename.tablename to 'username'@'host';
例:

grant select,insert on zje.zje to 'aaa'@'%';

//表示給使用者aaa授權,讓aaa能給zje庫中的zje表 實行 insert 和 select。

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

//表示給使用者aaa授權,讓aaa能給所有庫所有表實行所有的權力。

//再看使用者列表,可以發現許可權都變成 y了。

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

grant all on *.*  to 'aaa'@'%' with grant option;
4.刪除使用者

命令:drop user 'user_name'@'host';  

例: drop user 'tom'@'%'; //表示刪除使用者aaa;

5.設定與更改使用者密碼

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

如果是設定當前使用者的密碼:set password = password('newpassword');

如:set password = password('123456');

6.撤銷使用者許可權

revoke privileges on database.tablename from 'username'@'host';

例如:revoke select on *.* from 'zje'@'%';

7.使用者重新命名

rename user 'tom'@'%' to 'tomao'@'%';
8.重新整理許可權

flush privileges;

MySQL擴充套件知識7 使用者管理

mysql中的使用者,都儲存在系統資料mysql中的user表中。create user 使用者名稱 主機名 identified by 密碼 drop user 使用者名稱 主機名 set password password 密碼 set password for 使用者名稱 主機名 passwo...

MySQL使用者管理基礎知識

許可權表user表 使用者列 許可權列 安全列 資源控制列 db表和host表 使用者列 許可權列 tables priv表和columns priv表 mysql h hostname hostip p port u usename p databasename e sql語句 create us...

mysql 使用者管理 MySQL使用者管理

一 mysql使用者管理的必要性 如果我們只能使用root使用者,這樣安全隱患,這時,我們需要使用mysql的使用者管理技術.一次獲得 分配許可權user db tables priv columns priv 許可權範圍一次遞減,全域性許可權覆蓋區域性許可權。換句話說user表中的每個許可權都代表...