数据控制其实就是权限的分配。
权限如下:
Mysql的用户信息存储在mysql数据库的user表中。
创建用户:
CREATE USER ‘用户名’@’允许其登录的地址’ IDENTIFIED BY ‘密码’;
说明:
创建的用户需同时指定该用户可以在哪个地址进行登录。其中“%”代表“任何地址”。
用户创建之后,自动在mysql的user表中添加了一条记录,但该用户还没有权限。
删除用户:
drop user '用户名'@'允许其登录的地址';
修改用户密码:
修改自己密码: setpassword = password(‘新密码’);
修改他人密码(必须有修改权限):
setpasswordfor‘用户名’@’允许其登录的地址’= password(‘新密码’);
增加权限:
grant 权限名1,权限名2, .... on 数据库名.对象名 to ‘用户名’@’允许其登录的地址’ identified by ‘密码’;
说明:
权限名就是:’select’, ‘update’, ‘delete’,等等。其中ALL 表示“所有权限”,或all privileges也一样。
对象名:就是一个数据库中“装”的东西,表是最常见的,也可以是视图,存储过程,存储函数等。其中:*.*表示所有数据中的所有对象。某数据库名.*表示该数据库中的所有对象——这个商业上常用。
identified by ‘密码’用于给一个用户在此时修改密码,不写也可以,那就不修改密码。
但同时该语句也可以创建用户(如果不存在),但此时identified by ‘密码’必须写。
删除权限:
revoke 权限名1,权限名2, .... on 数据库名.对象名 from ‘用户名’@’允许其登录的地址’ ;