每日shell脚本之mysql健康查询

每日shell脚本之mysql健康查询

python 复制代码
#!/usr/bin/bash                
#CSDN :M乔木 
#Email:2776617348@qq.com 
#解释器:这是一个shell脚本 
   
cat<<EOF
----------------------------------------------------
 输入1 [heartbeat] 获取mysql存活
 输入2 [qps]       获取mysql的增删改查次数
 输入3 [oos]       获取MySQL启动时间
 输入4 [replication] 获取主从复制的状态  [返回状态码 正常:0 异常:1 无主从:2]
 输入5 [process]   获取当前正在运行的sql数量
 输入6 [time]      获取当前执行时间大于10秒的所有sql
 输入q 退出
----------------------------------------------------
EOF
	read -p "请输入你的操作:" num
	case $num in
1)
	ch=`mysql -p0  -e "SHOW STATUS LIKE 'Threads_connected';" 2>/dev/null   | awk '/Threads_connected/{print $0}' | awk '{print $2}'`
	if [ $ch -eq 1 ];then
	echo "mysql还在活着!"
	else
	echo "mysql已死亡!"
	fi
	;;
2)
	cm=`mysql -p0  -e "SHOW STATUS LIKE 'Com_insert';" 2>/dev/null | awk '/Com_insert/{print $2}'`
	sm=`mysql -p0  -e "SHOW STATUS LIKE 'Com_delete';" 2>/dev/null | awk '/Com_delete/{print $2}'`
	gm=`mysql -p0  -e "SHOW STATUS LIKE 'Com_update';" 2>/dev/null | awk '/Com_update/{print $2}'` 
	zm=`mysql -p0  -e "SHOW STATUS LIKE 'Com_select';" 2>/dev/null | awk '/Com_select/{print $2}'`	
	echo "mysql增删改查分别为:"
	echo "插入[${cm}]删除[${sm}]更新[${gm}]查询[${zm}]"
	;;
3)
	mu=`mysql -p0  -e "SHOW GLOBAL STATUS LIKE 'Uptime';" 2>/dev/null | awk '/Uptime/{print $2}'` 
	echo "mysql已运行[${mu}秒]"
	;;
4)
	zz=`ssh 192.168.219.128 "mysql -p0 -e 'show slave status\G'" 2>/dev/null | awk '/Slave_IO_Running/{print $0}' | cut -d':' -f2 `
	if [ $zz = "yes" ];then
	echo "mysql状态:0"
	else
	echo "mysql状态:1"
	fi
	;;
5)
	ym=`mysql -p0  -e "SHOW FULL PROCESSLIST;" 2>/dev/null | awk '/root/{print $1}'`
	echo "mysql当前有${ym}个sql运行"
	;;
6)
	cat /var/lib/mysql/atguigu-slow.log 
	;;
q)
	exit 0	
esac
相关推荐
折哥的程序人生 · 物流技术专研4 小时前
Java面试85题图解版 · 特别篇:2026后端高频面试题复盘(算法底层逻辑+高并发架构设计全解析,附Java实战代码)
java·网络·数据库·算法·面试
AOwhisky4 小时前
Redis 学习笔记(第三期):持久化与主从复制
运维·数据库·redis·笔记·学习·云计算
李白的天不白4 小时前
数据库连接报错问题
数据库
一条泥憨鱼4 小时前
【Redis】数据类型和常用命令
java·数据库·redis·后端·缓存
爱喝水的鱼丶5 小时前
SAP-ABAP:SAP视图开发入门:四类标准视图的适用场景与创建步骤详解
服务器·数据库·性能优化·sap·abap
JohnnyDeng945 小时前
【Android】Hilt 依赖注入:原理与最佳实践
android·kotlin·mvvm·hilt
大白要努力!5 小时前
MySQL 8.0 + Navicat 完整操作指南
数据库·mysql
云絮.6 小时前
数据库操作
数据库·mysql·算法·oracle
小小工匠6 小时前
Redis 缓存替换策略:8 种淘汰策略与 LRU 实现剖析
数据库·redis·缓存