MySQL权限管理

php中文网
发布: 2016-06-07 17:17:28
原创
1337人浏览过

我们先了解何时 MySQL 存放于内存结构中的权限信息被更新: FLUSH PRIVILEGES 会强行让 MySQL 更新 Load 到内存中的权限信息; G

查看用户权限
show grants for 你的用户
比如:
show grants for root@'localhost';

mysql 5种权限级别:global level,database level,table level,column level,routine level。高级别会覆盖低级别的权限。
给用户赋权,与撤消权限
GRANT SELECT,UPDATE,DELETE,INSERT ON *.* TO 'def'@'localhost';
REVOKE SELECT,UPDATE,DELETE,INSERT ON *.* FROM 'def'@'localhost';
权限相关表存储在数据库mysql中,有user, db, host, tables_priv, columns_priv, procs_priv, proxies_priv。

--查看当前用户
select user();
--查看所有用户
SELECT host,user,password FROM mysql.user ORDER BY user;

网龙b2b仿阿里巴巴电子商务平台
网龙b2b仿阿里巴巴电子商务平台

本系统经过多次升级改造,系统内核经过多次优化组合,已经具备相对比较方便快捷的个性化定制的特性,用户部署完毕以后,按照自己的运营要求,可实现快速定制会费管理,支持在线缴费和退费功能财富中心,管理会员的诚信度数据单客户多用户登录管理全部信息支持审批和排名不同的会员级别有不同的信息发布权限企业站单独生成,企业自主决定更新企业站信息留言、询价、报价统一管理,分系统查看分类信息参数化管理,支持多样分类信息,

网龙b2b仿阿里巴巴电子商务平台 0
查看详情 网龙b2b仿阿里巴巴电子商务平台

我们先了解何时 MySQL 存放于内存结构中的权限信息被更新: FLUSH PRIVILEGES 会强行让 MySQL 更新 Load 到内存中的权限信息; GRANT 、 REVOKE 或者 CREATE USER 和 DROP USER 操作会直接更新内存中的权限信息;重启 MySQL 会让 MySQL 完全从 grant tables 中读取权限信息。

那内存结构中的权限信息更新之后对已经连接上的用户何时生效呢?对于 Global Level 的权限信息的修改,仅仅只有更改之后新建连接才会用到,对于已经连接上的 session 并不会受到影响。而对于 Database Level 的权限信息的修改,只有当客户端请求执行了 “ USE database_name ” 命令之后,才会在重新校验中使用到新的权限信息。所以有些时候如果在做了比较紧急的 Global 和 Database 这两个 Level 的权限变更之 后 ,可能需要通过 “ KILL ” 命令将已经连接在 MySQL 中的 session 杀掉强迫他们重新连接以使用更新后的权限。对于 Table Level 和 Column Level 的权限,则会在下一次需要使用到该权限的 Query 被请求的时候生效,也就是说,对于应用来讲,这两个Level 的权限,更新之后立刻就生效了,,而不会需要执行 “ KILL ” 命令。

linux

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号