灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:3679回复:0

[mysql]mysql用户最小权限那些事

楼主#
更多 发布于:2013-07-26 11:09
×00 mysql用户权限简介

mysql root 用户权限最高,下面我们执行权限查看命令,看下root的权限
show grants for root@localhost //查看root用户权限
+---------------------------------------------------------------------+
| Grants for root@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION        |
+---------------------------------------------------------------------+
根据上面的输出看出,root 是拥有all privileges ,那么我们把全部的权限列出来
privileges
你可以指定的权限可以分为三种类型:
数据库/数据表/数据列权限:
Alter: 修改已存在的数据表(例如增加/删除列)和索引。
Create: 建立新的数据库或数据表。
Delete: 删除表的记录。
Drop: 删除数据表或数据库。
INDEX: 建立或删除索引。
Insert: 增加表的记录。
Select: 显示/搜索表的记录。
Update: 修改表中已存在的记录。
全局管理MySQL用户权限:
file: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。
特别的权限:
ALL: 允许做任何事(和root一样)。
USAGE: 只允许登录–其它什么也不允许做。
0×01 权限的设置
我们从新开始,先登录root用户,创建个普通用户,用户名和密码 都为leesec
insert into mysql.user(Host,User,Password) values('localhost','leesec',password('leesec'));
接下来我们再对leesec用户设置对数据库或者表的各种控制权限
1.对数据库leesec, 表 admin 设置只允许查询、修改、插入 权限
grant select,update,insert on leesec.admin to leesec@localhost identified by 'leesec';
然后我们登录leesec用户,对表admin 执行删除记录操作
ERROR 1142 (42000): DELETE command denied to user ‘leesec’@'localhost’ for table ‘admin’
2.给mysql用户leesec对表admin有删除权限
grant delete on leesec.admin to leesec@localhost identified by 'leesec'
3.删除Mysql用户leesec 的删除权限
revoke delete on leesec.admin from leesec@localhost;
现在最小权限设置 你懂的

喜欢0 评分0
游客

返回顶部