大家好,我是天空之城,今天给大家带来,mysql数据控制语言DCL。sql语言按功能分为四类,DDL DML DQL DCL,DCL用于管理用户和权限。



一、用户管理
DCL主要能做什么
创建用户
删除用户
修改密码
给用户赋予权限
撤销用户权限
#创建用户
CREATE USER '用户名' [@'主机名'] [IDENTIFIED BY '密码'];
注意: MySQL的用户账号由两部分组成:用户名和主机名,即用户名@主机名,主机名可以是IP或机器名称,主机名为%表示允许任何地址的主机远程登录MySQL数据库。
#删除用户
DROP USER '用户名' [@'主机名'];
#修改密码
ALTER USER '用户名'@'主机名' IDENTIFIED BY新密码';
进入数据库,查看user表
select * from user\G;
root用户只能在localhost本机登录,确保数据库的安全性
二 创建用户
create user 'liusan'@'%' identified by '123456';
创建liusan用户,可以在任何机器上登录,密码123456
create user 'liusan'@'192.168.0.221' identified by '123456';
创建liusan用户,可以在ip地址的'192.168.0.221'机器上登录,密码123456
ipconfig查看电脑的ip地址
三 权限管理
在MySQL数据库中,使用grant命令授权、revoke命 令撤销授权。
#授权
grant all privileges on databaseName.tableName to '用户名' [@'主机名'];
#撤销授权
privileges on databaseName.tableName from '用户名' [@'主机名'];
#刷新权限
FLUSH PRIVILEGES;
#查看权限
show grants for '用户名' [@'主机名'];
把查看数据库权限赋予给liusan用户
show select on mydb.* to 'liusan'@'%';

网友评论