mysql 用户和权限分配

1. 新增用户

Sql代码   收藏代码
  1. mysql>insert into mysql.user(Host,User,Passwordvalues("localhost","lionbule",password("hello1234"));  
  2. mysql>flush privileges;  

 

2. 修改用户密码

Sql代码   收藏代码
  1. mysql>update mysql.user set password=password('new password'where User="lionbule" and Host="localhost";  
  2. mysql>flush privileges;  

3. 删除用户

Sql代码   收藏代码
  1. mysql>DELETE FROM user WHERE User="lionbule" and Host="localhost";  
  2. mysql>flush privileges;  

 

4. 权限分配

    4.1. grant用法

           grant 权限 on 数据库.* to 用户名@'登录主机' identified by '密码'

Doc代码   收藏代码
  1. 权限:  
  2.     常用总结, ALL/ALTER/CREATE/DROP/SELECT/UPDATE/DELETE  
  3. 数据库:  
  4.      *.*                    表示所有库的所有表  
  5.      test.*                表示test库的所有表  
  6.      test.test_table  表示test库的test_table表       
  7. 用户名:  
  8.      mysql账户名  
  9. 登陆主机:  
  10.      允许登陆mysql server的客户端ip  
  11.      '%'表示所有ip  
  12.      'localhost' 表示本机  
  13.      '192.168.10.2' 特定IP  
  14. 密码:  
  15.       账户对应的登陆密码  

 

    4.2 例子

Sql代码   收藏代码
  1. mysql>grant all  on test.* to lionbule@'%' identified by 'hello1234';  
  2. mysql>flush privileges;  

    新增密码为‘hello234’的用户lionbule对test库拥有所有操作权限,并不限制lionbule用户的登陆IP。     

 

撤销已经赋予给 MySQL 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

[sql]  view plain copy print ?
  1. grant  all on *.* to   dba@localhost;  
  2. revoke all on *.* from dba@localhost

    4.3 注意事项

          grant 会覆盖用户的部分信息,跟insert 、update执行功能一样.

你可能感兴趣的:(mysql)