控制mysql用户连接数据库数目
浏览:2542次 出处信息
对于MySQL用户权限一般都喜欢用grant all privileges on huzi.* to ‘xxx’@'localhost’ identified by ‘xxx’ 来授权用户。之前由于程序的BUG 并发index.php就可以把数据库给弄死,由于程序是加密,也不提供太多技术支持,再笨的攻击者随便就可以让网站陷入瘫痪。官方提供的技术支持是rewrite 可是,弄了这个以后 后台登录发布广告又成了问题,真是垃圾程序 。那时候只有通过域名分开 访问www.xxx.com的用户通过iptables 的connlimit模块来限制并发连接数据库的数目。后来想想,Mysql自己应该也可以控制 用户的连接数目 ,大家 desc mysql.user 就可以看出来了,有两个参数 ,这两个可以针对global 也可以针对某个用户的会话 ,参数是 max_connections max_user_connections
max_connections 默认值是0 也是无限连接的意思 (受my.cnf 的max_connections限制 ),我们可以使用
update user set max_connections=’2′ where user=’huzi’;
这样 ,每小时huzi只能连接两次数据库,这个有点BT,直接pass
那就看max_user_connections 这个我们理解为 用户最大的连接数目,针对用户本身
update user set max_user_connections=’9′ where user=’huzi’;
我设置了huzi这个用户最大的连接数目为9
下面我用工具连接,我连接第六次提示
进入 mysql shell看看线程数目
9个连接
建议继续学习:
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
文章信息
- 作者:虎子 来源: 虎子的BLOG
- 标签: 连接数
- 发布时间:2010-09-12 23:53:50
近3天十大热文
-
[884] WordPress插件开发 -- 在插件使用 -
[136] 解决 nginx 反向代理网页首尾出现神秘字 -
[57] 整理了一份招PHP高级工程师的面试题 -
[54] Innodb分表太多或者表分区太多,会导致内 -
[54] 如何保证一个程序在单台服务器上只有唯一实例( -
[54] 分享一个JQUERY颜色选择插件 -
[53] jQuery性能优化指南 -
[52] 用 Jquery 模拟 select -
[52] CloudSMS:免费匿名的云短信 -
[51] 全站换域名时利用nginx和javascri



