MySql 安全管理

MySQL服务器的安全基础是:用户应该对他们需要的数据具有适当的访问权,既不能多也不能少。

管理用户

1、查看所有用户

use mysql;
select user from user;

2、创建用户

create user ben identified by 'password';

3、重命名用户

rename user ben to benku

4、删除用户

drop user benku

设置访问权限

1、查看权限

show grants for benku

//结果
//GRANT USAGE ON *.* TO 'benku'@'%'表示任何权限

+-----------------------------------+
| Grants for benku@%                |
+-----------------------------------+
| GRANT USAGE ON *.* TO 'benku'@'%' |
+-----------------------------------+

2、赋予权限

//允许用户在crashcourse的所有表上使用select
grant select on crashcourse.* to benku;

//撤销权限
revoke select on crashcourse.* from benku;

//可以将多个权限简化在一个语句中
grant select, insert on crashcourse.* to benku;

grant和revoke可在几个层次控制访问权限:

  • 整个服务器,使用grant all和revoke all
  • 真个数据库,使用on database.*
  • 特定的表,使用on database.table
  • 特定的列
  • 特定的存储过程

详情见下图:

\1.png

3、更改密码

set password for benku = password('new password');

//当前用户可简化为
set password = password('new password');


参考书籍:

  • MySQL必知必会

你可能感兴趣的:(MySql 安全管理)