MySQL權限管理


 

mysql> SHOW GRANTS \G
***************************  1. row ***************************
Grants  for root@localhost: GRANT ALL PRIVILEGES ON *.* TO  ' root '@ ' localhost ' IDE
NTIFIED BY PASSWORD  ' *11B9ACA21786F766739D0EB1483C5F64212B81AC ' WITH GRANT OPTIO
N
***************************  2. row ***************************
Grants  for root@localhost: GRANT PROXY ON  ''@ '' TO  ' root '@ ' localhost ' WITH GRANT
 OPTION
2 rows  in  set ( 0.00 sec)

 

 如果當前賬號擁有ALL權限,可用最簡單的新增用戶並授權:

grant all on *.* to `root`@`%` identified by '123456' with grant option;
mysql> GRANT ALL ON *.* TO  ' gechong '@ ' localhost ' IDENTIFIED BY  ' ge0513.mysql ' WI
TH GRANT OPTION;
Query OK,  0 rows affected ( 0.03 sec)

 

mysql> SELECT USER,HOST FROM mysql.user;

+---------+-----------+
| USER    | HOST      |
+---------+-----------+
| root    | 127.0.0.1 |
| gechong | localhost |
| root    | localhost |
+---------+-----------+
3 rows in set (0.00 sec)

 

 其中with grant option表示新增的該賬號是否有grant權限,即是否可以通過其創建新賬號。

非常不建議給用戶開放全部權限,最好給新用戶僅開放所需要的相關權限。一般給開發人員SELECT,UPDATE,DELETE,INSERT,CREATE,EXECUTE 權限並且只在某些網段內訪問

例如:

 mysql> GRANT INSERT,UPDATE,DELETE,SELECT,CREATE,EXECUTE ON *.* TO 'kaifaA'@'10.1

2.%.%' IDENTIFIED BY 'kaifaA.mysql';
Query OK, 0 rows affected (0.00 sec)

 用戶gechong就只有6個權限並且只可以在10.1.*.*網段內使用。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM