DCL(Data Control Language),即数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户。
主要包括创建用户、给用户授权、对用户撤销授权、查询用户授权和删除用户等。
1.创建用户
需要使用root用户登录之后进行操作
创建用户的命令为:create user 用户名@xxx identified by 密码;
其中xxx表示创建的用户使用的IP地址,可以设置为localhost(代表本机)或者'%'(代表允许所有IP地址登录)
2.给用户授权
创建用户之后,可以使用新用户进行登录,查看数据库只有系统自带的数据库,想要操作自己创建的数据库还需要root用户对新用户进行授权
给用户授权的命令为:grant 权限1,权限2,........,权限n on 数据库名.* to 用户名@IP;
上面命令的含义是将数据库的n个权限授予用户
如果是将操作数据库的所有的权限授予用户,命令为:grant all on 数据库名.* to 用户名@IP;
授权之后,新用户就可以操作相应的数据库了
3.撤销授权
当需要限制新用户操作数据库的权限时,root用户可以撤销已授予用户的某些权限
撤销权限的命令为:revoke 权限1,权限2,........,权限n on 数据库名.* from 用户名@IP;
4.查看用户的权限
root用户查看用户权限的命令为:show grants for 用户名@IP;
5.删除用户
root用户删除用户的命令为:drop user 用户名@IP;
以上即为mysql常用的DCL,需要在实际操作中慢慢体会。