添加用户 mysql> use mysql
mysql> insert into
user(host,user,password)values('localhost','test', password('222222'));
mysql> flush privileges;
授权:grant all on *.* to 'test'@'localhost'identified by '222222'
grant select on stus.* to 'test'@'localhost'identified by '121212'
grant privileges(columns)
privileges表示授予的权限,columns表示作用的列(可选) on what
设置权限级别:全局级、数据库级、表级、列级 to account
权限授予的用户:用'user _name'@'host_name'这种用户名、主机名格式、identified by 'password'设置密码 privileges有哪些 alter 修改表和索引 create 创建数据库和表 delete 删除表中以有的记录 drop 删除数据库和表 inde 创建和删除索引 insert 向表中插入数据 select 检索表中的数据、 update 修改表中的记录
file 读写服务器上的数据
process 查看服务器中执行的线程信息或杀死线程 reload 重载授权表或清空日志、主机缓存或表缓存 shutdown 关闭服务器 all 所有权限 revoke取消授权
mysql>revoke privileges(columns)on what from account;
注:revoke可删除权限,但不能删除帐号,即使帐号已经没有任何权限。所以user数据表里还会有该帐号的记录,要彻底删除帐号,需使用delete命令手工删除user表中的相关数据。 示例:
revoke all on *.*from'test'@'localhost'; delete from user where user='test'; 细节权限的分配与撤销
grant select,delete,update on
student,test.*to'erich'@'localhost'identified by 'test' 运行结果是,erich用户只能通过‘test‘密码从本机访问student,test数据库,并且没有insert权限 revoke select,delete,update on student.*from'erich'@'localhost';
运行结果是,将erich用户在student数据库中的select,delete,update权限撤销