[Mysql]数据控制语言(DCL)

来源:互联网 发布:oracle 更新数据 编辑:程序博客网 时间:2024/06/14 19:11

数据控制,也就是分配权限
主要包括

  • 用户管理
  • 权限分配

mysql中的用户

存储在系统数据库mysql.user表中

mysql中的权限

用户管理

创建用户

create user ‘用户名’@’允许其登录的地址’ identified by ‘密码’;

  • 创建的用户需同时指定该用户可以在哪个地址进行登录,“%”代表“任何地址”
  • 用户创建之后,自动在mysql的user表中添加了一条记录,但该用户还没有权限

修改用户密码

修改自己密码: set password = password(‘新密码’);

修改他人密码(必须有修改权限):set  password  for  ‘用户名’@’允许其登录的地址’  = password(‘新密码’);

删除用户

drop user ‘用户名’@’允许其登录的地址’;

权限分配

增加权限

grant 权限名1, 权限名2, ... on 数据库名.对象名 to ‘用户名’@’允许其登录的地址’ identified by ‘密码’;

  • 权限名就是:‘select’,‘update’, ‘delete’等等,ALL/all privileges代表“所有权限”
    *.*表示所有数据中的所有对象
    某数据库名.*表示该数据库中的所有对象
  • identified by ‘密码’用于给一个用户在此时修改密码,不写就不修改密码
  • 该语句也可以创建用户(如果不存在),此时identified by ‘密码’必须写

删除权限

revoke 权限名1,权限名2, .... on 数据库名.对象名 from ‘用户名’@’允许其登录的地址’;
表示从某个用户身上“取消”某些权限(也许还保留了其他权限)

原创粉丝点击