MySql用户及权限管理

MySql用户及权限管理
user:用户账号、全局权限
db:库级别权限
tables_priv:表级别权限(delete,alter,trigger)
columns_priv:列级别权限 (select,insert,update)
procs_priv:存储过程和存储函数相关的权限 (super)
proxies_priv:代理用户权限

查看用户的权限
show grants for cactiuser@'%';

创建mysql用户
create user username@host identified by 'password'; 默认重读授权表
例:create user cactiuser@'%' identified by 'cactiuser' ; 默认权限是usage权限,%是允许所有主机

用户授权(在某个个库或表上授权给某用户以*权限)
grant create on cactidb.* to 'cactiuser'@'%'; 给所有主机来的用户名为cactiuser的用户,授权可以创建cactidb库及内部的表索引等
grant alter on cactidb.* to 'cactiuser'@'%'; 给所有主机来的用户名为cactiuser的用户,授权可以修改cactidb库及内部的表索引等
grant update(age) on cactidb.testtb to 'cactiuser'@'%'; 给所有主机来的用户名为cactiuser的用户,授权只可以更新cactidb库里面的testtb表的age字段。
grant super on *.* to 'cactiuser'@'%'; 给所有主机来的用户名为cactiuser的用户,授权可以修改全局变量等权限

取消授权(从某个用户上收回对某个库或表的*权限)
revoke select on cactidb.* from cactiuser@'%'; 收回对所有主机来的用户名为cactiuser的用户对cactidb库及所有表的查询权限

MySql密码破解
1.停止mysql服务 service mysqld stop
2./usr/bin/mysqld_safe --skip-grant-tables --skip-networking & 跳过加载授权表和网络来启动mysql服务
3.登入mysql无法通过set PASSWORD for 'USERNMAE'@'HOST'=PASSWORD('new_pass');来修改
update user set Password=password('123456') where User='root'; 对密码加密显示

 

posted @ 2019-04-30 15:19  Me-lihu  阅读(125)  评论(0编辑  收藏  举报