实战:判断mysql中当前用户的连接数-分组筛选 #connets.sh #!/bin/sh #ocpyang@126.com #根据输入参数u或d来显示出对应的用户名或数据库名中用户的连接数. #也可以输入u 具体用户名或d 具体数据库名做进一步的分组筛选 #set mysql evn MYSQL_USER=system #mys

实战:判断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

export black='\033[0m'

export boldblack='\033[1;0m'

export red='\033[31m'

export boldred='\033[1;31m'

export green='\033[32m'

export boldgreen='\033[1;32m'

export yellow='\033[33m'

export boldyellow='\033[1;33m'

export blue='\033[34m'

export boldblue='\033[1;34m'

export magenta='\033[35m'

export boldmagenta='\033[1;35m'

export cyan='\033[36m'

export boldcyan='\033[1;36m'

export white='\033[37m'

export boldwhite='\033[1;37m'

cecho ()

## -- Function to easliy print colored text -- ##

# Color-echo.

# 参数 $1 = message

# 参数 $2 = color

{

local default_msg="No message passed."

message=${1:-$default_msg} # 如果$1没有输入则为默认值default_msg.

color=${2:-black} # 如果$1没有输入则为默认值black.

case $color in

black)

printf "$black" ;;

boldblack)

printf "$boldblack" ;;

red)

printf "$red" ;;

boldred)

printf "$boldred" ;;

green)

printf "$green" ;;

boldgreen)

printf "$boldgreen" ;;

yellow)

printf "$yellow" ;;

boldyellow)

printf "$boldyellow" ;;

blue)

printf "$blue" ;;

boldblue)

printf "$boldblue" ;;

magenta)

printf "$magenta" ;;

boldmagenta)

printf "$boldmagenta" ;;

cyan)

printf "$cyan" ;;

boldcyan)

printf "$boldcyan" ;;

white)

printf "$white" ;;

boldwhite)

printf "$boldwhite" ;;

esac

printf "%s\n" "$message"

tput sgr0 # tput sgr0即恢复默认值

printf "$black"

return

}

cechon ()

# Color-echo.

# 参数1 $1 = message

# 参数2 $2 = color

{

local default_msg="No message passed."

# Doesn't really need to be a local variable.

message=${1:-$default_msg} # 如果$1没有输入则为默认值default_msg.

color=${2:-black} # 如果$1没有输入则为默认值black.

case $color in

black)

printf "$black" ;;

boldblack)

printf "$boldblack" ;;

red)

printf "$red" ;;

boldred)

printf "$boldred" ;;

green)

printf "$green" ;;

boldgreen)

printf "$boldgreen" ;;

yellow)

printf "$yellow" ;;

boldyellow)

printf "$boldyellow" ;;

blue)

printf "$blue" ;;

boldblue)

printf "$boldblue" ;;

magenta)

printf "$magenta" ;;

boldmagenta)

printf "$boldmagenta" ;;

cyan)

printf "$cyan" ;;

boldcyan)

printf "$boldcyan" ;;

white)

printf "$white" ;;

boldwhite)

printf "$boldwhite" ;;

esac

printf "%s" "$message"

tput sgr0 # tput sgr0即恢复默认值

printf "$black"

return

}

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

cechon "输入错误!" red

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

cechon "you input schema_name $2 not exits,pleae check your schema_name" red

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

cechon "you input username $2 not exits,pleae check your user_name" red

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

cechon "输入错误!" red

echo " "

fi

fi

#清除临时文件

rm -rf ${logfiledate_init}

rm -rf ${logfiledate_midd}

rm -rf ${judegedate_01}

rm -rf ${judegedate_02}

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

mysql 当前用户连接数_实战:判断mysql中当前用户的连接数-分组淘选相关推荐

  1. linux中更改用户密码_如何在Linux中更改用户密码

    linux中更改用户密码 In this tutorial, we will focus on how you can change a user's password in Linux. We wi ...

  2. mysql主从架构升级_实战项目——mysql主从架构的实现

    一主一从 1.1 环境准备: centos系统服务器2台. 一台用户做Mysql主服务器, 一台用于做Mysql从服务器, 配置好yum源. 防火墙关闭. 各节点时钟服务同步. 各节点之间可以通过主机 ...

  3. mysql 执行计划 视频_实战讲解MySQL执行计划,面试官当场要了我

    全是干货的技术号: 本文已收录在github,欢迎 star/fork: explain或者desc获取MySQL如何执行select语句的信息. 结果包含很多列 1 各列字段说明 1.1 id SE ...

  4. Ifvisible.js – 判断网页中的用户是闲置还是活动状态

    ifvisible.js 是一个跨浏览器.轻量级的方式,用户检查用户在浏览页面或正在与它进行交互.它可以处理活动状态,如在页面上空闲或活跃.您还可以使用 ifvisible.js 智能设置您的间隔,如 ...

  5. mysql数据库单用户模式_干掉一堆mysql数据库,仅需这样一个shell脚本(推荐)

    一大早就被电话吵醒了,云某项目数据库全挂了,启动不了(睡得太死,没听到报警短信),吓得不轻啊! 电话中说所有mysql数据库主库都启动不了,但从库正常,怀疑是主库去连其它阿里云的主库了.这些数据库,以 ...

  6. mysql 用户概念_传输概念 – db对象的用户/组/权限从mysql到postgresql

    这似乎比stackoverflow更适合这里,所以这里: 我一直在使用mysql一段时间以来,因为在大多数便宜的虚拟主机上,它是提供的数据库.但是,现在我开始认真开发Web应用程序,我一直在本地使用p ...

  7. mysql 增大数据库链接_怎么增大MYSQL数据库连接数

    怎么增大MYSQL数据库连接数 怎么增大MySQL数据库连接数,MYSQL数据库安装完成后,默认连接数是100,流量稍微大一点的论坛或网站这个连接数是不够哟用的,那么怎么才能增加默认MYSQL连接数呢 ...

  8. mysql 如何修改用户密码_如何更改MySQL用户密码

    在本教程中,我们将向您展示如何更改MySQL用户密码.这些说明应适用于任何现代Linux发行版,例如Ubuntu 18.04和CentOS7. 先决条件 根据系统上运行的MySQL或MariaDB服务 ...

  9. mysql 授予所有权限_请问 :mysql数据库如何将某一个表的查询权限授予给所有用户?...

    MySQL没有实现public关键词.所以,要把一个表(如表table1)的select权限授予所有用户,需要自己遍历所有用户.表Table1的权限,可以通过: select * from mysql ...

最新文章

  1. 【JS基础】Array数组的创建与操作方法
  2. 揭秘微软全球最大数据中心
  3. 学习《CSS选择器Level-4》不完全版
  4. 2017年10月08日普及组 世界语
  5. Sales area data model research in QDD
  6. 谓词筛选表达式的扩展库PredicateLib
  7. 计算机控制论文,计算机控制系统论文.ppt
  8. PHP为什么empty可以访问不存在的索引
  9. 荣耀9X将搭载麒麟810处理器:全球四大7nm芯片之一无法低调
  10. 扩展linux swap分区大小,扩展Linux系统swap分区的大小
  11. win7 兼容 因特尔十代_高配主板想用win7咋办 Intel10代CPU配上驱动总裁玩转win7
  12. 安川机器人仿真软件安装
  13. C#之DotNetBar2使用方法 - itemPanel1
  14. 此计算机上未安装sql2000,Windows10系统安装sql2000没有反应如何解决
  15. 【Get深一度】信号处理(三)——3db带宽
  16. Win11想运行老游戏怎么设置
  17. 迷惘_飘云羽逸_新浪博客
  18. GPU Raid卡加持!PBlaze6 6920挑战8盘Raid5
  19. 非线性微分方程有限差分解法
  20. Vulnhub-Tr0ll

热门文章

  1. java socket字符串_Java Socket Bug:从Socket的InputStream读取字符串
  2. centos 对某ip开放 防火墙端口_CentOS7 firewalld防火墙指定IP与端口访问
  3. main函数执行前执行一个函数的写法
  4. Hologres揭秘:深度解析高效率分布式查询引擎
  5. 盲人也能用,优酷App做了哪些无障碍实践?
  6. 聊聊《战魂铭人》的游戏设计
  7. 游戏AI研究(三):路径规划
  8. 社交网站将推动手游发展
  9. 从分子层面雕刻肌肉,新数学模型预测锻炼肌肉最优方式
  10. 程序员体健康的各项指标是多少?