实战:判断mysql中当前用户的连接数-分组筛选
#connets.sh
#!/bin/sh
#ocpyang@126.com
#根据输入参数u或d来显示出对应的用户名或数据库名中用户的连接数.
#也可以输入u 具体用户名或d 具体数据库名做进一步的分组筛选
#set mysql evn
MYSQL_USER=system #mysql的用户名
MYSQL_PASS='password' #mysql的登录用户密码
MYSQL_HOST=192.168.2.188
if [ "$#" -lt 1 ];then
echo "**********************************"
echo "you must input paraters"
echo "**********************************"
echo "USAGE01: $0 d |$0 d database_name"
echo "eg01: $0 d|$0 d mysql"
echo "USAGE02: $0 u |$0 u username"
echo "eg02: $0 u |$0 u wind"
exit 1;
fi
#Case conversion
ipt=`echo $1 |tr '[a-z]' '[A-Z]'`
#source /usr/local/mysql/scripts/mysql_env.ini
logfiledate_init="tmpinit.`date +%Y%m%d%H%M%S`.txt"
logfiledate_midd="tmpmidd.`date +%Y%m%d%H%M%S`.txt"
judegedate_01="judegedate01.`date +%Y%m%d%H%M%S`.txt"
judegedate_02="judegedate02.`date +%Y%m%d%H%M%S`.txt"
mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"show processlist;" >${logfiledate_init}
if [ "$#" -eq 1 ]; then
if [ "$ipt" = 'D' ];then
awk '{tt[$4]++} BEGIN { printf "%-20s %-20s\n" ,"dbname","connect";} END{for (i in tt) printf "%-20s %-20s\n" ,i,tt[i]}' ${logfiledate_init} | grep -v "NULL"
elif [ "$ipt" = 'U' ];then
awk '{tt[$2]++} BEGIN { printf "%-20s %-20s\n" ,"username","connect";} END{for (i in tt) printf "%-20s %-20s\n" ,i,tt[i]}' ${logfiledate_init} | grep -v "NULL"
else
echo "**************************************************************"
echo "输入错误!"
echo "**************************************************************"
fi
elif [ "$#" -eq 2 ]; then
grep -i $2 ${logfiledate_init} > ${logfiledate_midd}
if [ "$ipt" = 'D' ];then
SCHEMA_JUDEGE01="select schema_name from information_schema.schemata where schema_name='$2';"
mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${SCHEMA_JUDEGE01}" >${judegedate_01}
if [ ! -s "${judegedate_01}" ];then
echo "**************************************************************"
echo "you input schema_name $2 not exits,pleae check your schema_name"
echo "**************************************************************"
rm -rf ${SCHEMA_JUDEGE01}
exit 0
else
awk '{tt[$4]++} BEGIN { printf "%-20s %-20s\n" ,"dbname","connect";} END{for (i in tt) printf "%-20s %-20s\n" ,i,tt[i]}' ${logfiledate_midd} | grep -v "NULL"
fi
elif [ "$ipt" = 'U' ];then
SCHEMA_JUDEGE02="select user from mysql.user where user='$2';"
mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${SCHEMA_JUDEGE02}" >${judegedate_02}
if [ ! -s "${judegedate_02}" ];then
echo "**************************************************************"
echo "you input username $2 not exits,pleae check your user_name"
echo "**************************************************************"
rm -rf ${SCHEMA_JUDEGE02}
exit 0
else
awk '{tt[$2]++} BEGIN { printf "%-20s %-20s\n" ,"username","connect";} END{for (i in tt) printf "%-20s %-20s\n" ,i,tt[i]}' ${logfiledate_midd} | grep -v "NULL"
fi
else
echo "**************************************************************"
echo "输入错误!"
echo "**************************************************************"
fi
fi
#清除临时文件
rm -rf ${logfiledate_init}
rm -rf ${logfiledate_midd}
rm -rf ${judegedate_01}
rm -rf ${judegedate_02}
转载于:https://blog.51cto.com/ocpyang/1427991
实战:判断mysql中当前用户的连接数-分组筛选相关推荐
- mysql 当前用户连接数_实战:判断mysql中当前用户的连接数-分组淘选
实战:判断mysql中当前用户的连接数-分组筛选 #connets.sh #!/bin/sh #ocpyang@126.com #根据输入参数u或d来显示出对应的用户名或数据库名中用户的连接数. #也 ...
- MySql中添加用户,新建数据库,用户授权,删除用户,修改密码
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 ...
- mysql user.isd_如何实现MySQL中的用户管理
如何实现MySQL中的用户管理 MySQL有一套先进的但非标准的安全/授权系统,掌握其授权机制是开始操作MySQL数据库必须要走的第一步,对于一个熟悉SQL基本操作的人来说,也是MySQL所有的知识中 ...
- MySQL中的用户管理
MySQL中的用户管理 MySQL是一个多用户的数据库系统,按权限,用户可以分为两种:root用户,超级管理员.有root用户创建的普通用户: 一.MySQL创建用户 Create user 用户名 ...
- Ifvisible.js – 判断网页中的用户是闲置还是活动状态
ifvisible.js 是一个跨浏览器.轻量级的方式,用户检查用户在浏览页面或正在与它进行交互.它可以处理活动状态,如在页面上空闲或活跃.您还可以使用 ifvisible.js 智能设置您的间隔,如 ...
- MySql中添加用户/删除用户
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 ...
- mysql中给用户添加密码_MySql中添加用户,新建数据库,用户授权,删除用户,修改密码...
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 ...
- mysql 限制单个用户资源_限制MySQL数据库单个用户最大连接数等的方法
限制MySQL数据库单个用户最大连接数等的方法 最近经常有网友问我,他们的服务器上总有一些网站用户的连接数过大,而影响了其他的网站的正常使用,那么如何把某一条臭鱼限制在自己的一亩三分地呢?下面我来说一 ...
- mysql中用户权限的授予_如何在MySQL中创建用户和授予权限
如何创建MySQL用户并授予权限?为了实现良好的安全性,需要为每个应用程序创建单独的用户帐户,而不是root用户访问数据库.这将确保应用程序无法访问其他应用程序的数据库.因此需要mysql管理员(ro ...
最新文章
- 帮朋友招聘赴北京微软ASP.NET开发工程师
- java项目嗖嗖移动业务大厅项目报告_晋江市撰写节能评估报告的报告机构立项范本-文瑞...
- 搭建 Django 开发环境
- python中bool函数的用法_python3实战python函数每日一讲 - bool([x])
- Linux学习-0927
- java数组元素的排序_java学习之数组元素排序,冒泡排序和选择排序
- python 克里金空间插值_Python-pykrige包-克里金(Kriging)插值计算及可视化绘制
- 主线程 唤醒_JAVA多线程--线程阻塞与唤醒
- 什么是数据库防火墙 数据库防火墙作用是什么
- vlan的理解以及华为access、trunk、hybrid三种链路对比
- android 经纬度的格式,的Android如何转换经纬度成度格式
- 第一篇文献:谈大数据时代的云控制摄影测量 ——张祖勋院士
- 托福高频真词List17 // 附托福TPO阅读真题
- 多元线性回归方程原理及其推导
- visio和office2016安装记录
- 手握13本书、老司机超出120年经验的公众号
- 点关于直线的距离、垂足、对称点公式
- selenium窗口切换
- 关于论文查重相关问题
- u盘锁计算机,简单几步将U盘打造成电脑登录“密码锁”,不插入就别打开!
热门文章
- Oracle的取整和四舍五入函数——floor,round,ceil,trunc使用说明
- 吴甘沙创业照见自动驾驶十年变迁,产业爆发在下一个春天里 | 自动驾驶这十年...
- MySQL-----pymysql模块
- 打破定式,突破屏障,走出自己的创意舒适区(转)
- JAVA将Excel中的报表导出为图片格式(三)换一种实现
- 关于单页面应用一些随想
- PhoneGap开发环境搭建
- 浅谈三层架构 通过这个,+Java开发模式经验。终于相通了,动软到底是为什么这么做...
- CISCO安全 ×××技术
- C++ 作用域与生命周期