免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3461 | 回复: 17
打印 上一主题 下一主题

下午写了一个mysql限额的脚本,正在服务器上使用 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-08-19 17:58 |只看该作者 |倒序浏览
不知道效果如何。正在测试。













mysql用户限额的实现

原理:
由于每个用户的数据库都是以目录的形式存在于/var/db/mysql或者其他目录下。
一个目录就是一个数据库。所以可以通过检测目录的大小得到数据库大小,判断
容量是否超过限额,如果超过限额就取消该用户的insert,create,update,create temp table
权限,允许select,delete等其他权限。

实现的脚本如下:
su-2.05b# cat quotamysql.sh
#!/bin/sh
#hmy-2004-8-19 v-0.1


mysqldir=/usr/db/mysql
infofiledir=/root/hmywork
limitfile=limitmysql
userfile=user_mysql
#定义初始变量
while [ 1 ];
do
sleep 10
#每隔10秒检查一次

for i in `cat ${infofiledir}/${userfile}`
do
now=`du ${mysqldir}/$i |tail -n 1 |awk '{print $1}'`
#取得当前目录大小
limit=`grep $i  ${infofiledir}/${limitfile}|awk '{print $2}'`
#取得限额大小
if [ "$now" -gt "$limit" ];
#如果大于限额就执行下面的mysql语句
then
mysql --user=MySql@AdminU_ser --password=***********<<EOF
use mysql
update db set insert_priv='N' ,update_priv='N', create_priv='N',Create_tmp_table_priv='N'  where db='$i';
flush privileges ;
EOF
echo $i database full! `date`>;>;fulluser
sed /`echo $i`/d $userfile >;tempfile
fi
done
cp tempfile $userfile



done

论坛徽章:
0
2 [报告]
发表于 2004-08-21 00:20 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

高手!

论坛徽章:
0
3 [报告]
发表于 2004-08-21 08:29 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

cp tempfile $userfile   该放到fi前面去。在服务器上跑了2天,资源占用率可以忽略。

论坛徽章:
0
4 [报告]
发表于 2004-08-22 14:48 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

支持一下,不错的东西,正在找呢。。

论坛徽章:
0
5 [报告]
发表于 2004-08-22 19:11 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

好文!顶呀~

论坛徽章:
0
6 [报告]
发表于 2004-08-24 14:53 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

好 精典

论坛徽章:
0
7 [报告]
发表于 2004-08-24 17:10 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

好,支持!不知测试结果如何,是否可用于实际使用?

论坛徽章:
0
8 [报告]
发表于 2004-08-25 08:55 |只看该作者

下午写了一个mysql限额的脚本,正在服务器上使用

收藏、

论坛徽章:
0
9 [报告]
发表于 2006-02-14 23:06 |只看该作者
好东西.找了很久了

论坛徽章:
0
10 [报告]
发表于 2006-02-15 09:02 |只看该作者
如果表类型是innodb,你怎么办?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP