一、用户管理:

1.创建用户:

方法一:直接创建用户:

create user 用户名@来源地址 identified by ‘登录密码’;

来源地址:
localhost --本机
192.168.150.% --网段
% --所有

方法二:在授权同时就创建用户:

grant 权限列表 on 数据库名.表名 to 用户名@来源 identified by 密码 [with grant option];
with grant option:这个选项表示该用户可以将自己拥有的权限授权给别人,可以不添加。
【注】可以使用grant重复给用户添加权限,进行权限叠加,记得授权后一定要刷新权限:flush privileges;

2.删除用户:

drop user 用户名@来源地址 ;

3.查看所有用户:

> select user,host from mysql.user;
+-------------+-------------------+
| User        | Host              |
+-------------+-------------------+
| admin       | %                 |
| smart       | %                 |
| tom         | 192.168.131.4.254 |
| mariadb.sys | localhost         |
| mysql       | localhost         |
| root        | localhost         |
+-------------+-------------------+
6 rows in set (0.002 sec)

4.用户重命名:

rename user ‘旧用户名’@‘旧主机’ to ‘新用户名’@‘新主机’;

5.用户修改密码:

方法一:运行mysqladmin脚本文件。

该文件一般在mysql安装目录下的bin目录中。
进入该目录,根据一下两种具体情况输入命令(只有root用户有这个权限)
(1).没有密码设置密码:
mysqladmin -uroot password “密码”
(2).修改密码:
mysqladmin -uroot -p"旧密码" password “新密码”

方法二:登录mysql数据库后修改密码:

 mysql -uroot  -p 旧密码
#1:alter user root@‘localhost’ identified by ‘123456’;    // 5.5版本不支持
#2:set password for 用户@来源 = password(‘新密码’);  #需要执行刷新权限 flush privileges;
#3:不建议
> update mysql.user set password=password(‘123456’) where User=“root” and Host=“localhost”;
 > flush privileges;

#4:使用grant指令在授权时修改密码:
`grant select on 数据库名.数据表名 to 用户名@主机 identified by '新密码' with grant option;`

【注意】更改密码时候一定要使用password函数(mysqladmin 和GRANT 两种方式不用写,会自动加上)

二、权限管理:

  • 授权:
    grant 权限列表 on 数据库名.表名 to 用户名@来源地址;

可使用“*”表示所有数据库或所有数据表,“%”表示任何主机地址

  • 收回权限:
    revoke 权限列表 on 数据库名.表名 from 用户名@来源地址
  • 查看当前用户具有哪些权限:
    show grants;
  • 查看某个用户具有哪些权限:
    show grants for 用户名@来源地址;

【注】生产环境授权用户建议:

  • 1.博客,CMS等产品的数据库授权:select insert update delete create 库生成后收回create权限
  • 2.生产环境主库用户授权:select insert update delete
  • 3.生产环境从库授权:select

标签: MySql,Grant,Revoke,Drop,Rename

添加新评论