## 关于**==mysql**==的用户管理,笔记 ## 1====、创建新用户 ## 通过**==root**==用户登录之后创建 ## >>** **grant all privileges on *.* to** **testuser**==@localhost identified by** **"123456"** **;**  **//**  **创建新用户,用户名为****testuser****,密码为****123456** ==; ## >>** **grant all privileges on *.* to** **testuser**==@localhost identified by** **"123456"** **;**  **//**  **设置用户****testuser****,可以在本地访问**==mysql ## >>** **grant all privileges on *.* to** **testuser**==@"%" identified by** **"123456"** **;**   **//**  **设置用户****testuser****,可以在远程访问**==mysql ## >>** **flush privileges** **;**  **//**  **mysql** **新设置用户或更改密码后需用**==flush privileges****刷新****MySQL****的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动****mysql**==服务器,来使新设置生效 ## 2====、设置用户访问数据库权限 ## >>** **grant all privileges on** **test_db.*** **to** **testuser@localhost identified by "123456" ;**  **//**  **设置用户**==testuser****,只能访问数据库****test_db****,其他数据库均不能访问** ==; ## >>** **grant all privileges on** ***.*** **to** **testuser@localhost identified by "123456" ;**  **//**  **设置用户**==testuser****,可以访问****mysql****上的所有数据库** ==; ## >>** **grant all privileges on** **test_db.user_infor** **to** **testuser@localhost identified by "123456" ;**  **//**  **设置用户**==testuser****,只能访问数据库****test_db****的表****user_infor****,数据库中的其他表均不能访问** ==; ## 3====、设置用户操作权限 ## >>** **grant** **all privileges** **on *.* to** **testuser@localhost identified by "123456" WITH GRANT OPTION** **;**  **//**==设置用户****testuser****,拥有所有的操作权限,也就是管理员** ==; ## >> grant** **select** **on *.* to** **testuser@localhost identified by "123456" WITH GRANT OPTION** **;**  **//**==设置用户****testuser****,只拥有【查询】操作权限** ==; ## >>** **grant** **select,insert** **on *.* to** **testuser@localhost identified by "123456"**  **;**  **//**==设置用户****testuser****,只拥有【查询****\****插入】操作权限** ==; ## >>** **grant** **select,insert,update,delete** **on *.* to** **testuser@localhost identified by "123456"**  **;**  **//**==设置用户****testuser****,只拥有【查询****\****插入】操作权限** ==; ## >>** **REVOKE** **select,insert** **ON what FROM** **testuser**==//****取消用户****testuser****的【查询****\****插入】操作权限** ==; ## 4====、设置用户远程访问权限 ## >>** **grant all privileges on *.* to** **testuser@**==“192.168.1.100”** **identified by** **"123456"** **;**  **//****设置用户****testuser****,只能在客户端****IP****为****192.168.1.100****上才能远程访问****mysql** ==; ## 5**==、关于****root**==用户的访问设置 ## 设置所有用户可以远程访问**==mysql****,****修改****my.cnf****配置文件,将****bind-address = 127.0.0.1****前面加****“#”****注释掉****,这样就可以允许其他机器远程访问本机****mysql**==了; ## >>** **grant all privileges on *.* to** **root@"%" identified by** **"123456"** **;**   **//**  **设置用户**==root****,可以在远程访问**==mysql ## >>** **select host,user from user;**   **//**==查询****mysql**==中所有用户权限 ## 关闭**==root**==用户远程访问权限 ## >>** **delete from user where user="root" and host="%" ;**  **//**==禁止****root****用户在远程机器上访问**==mysql ## >>** **flush privileges** **;**  **//**==修改权限之后,刷新****MySQL**==的系统权限相关表方可生效 > 来自 <[https://www.cnblogs.com/candle806/p/4048651.html](https://www.cnblogs.com/candle806/p/4048651.html)>