ThatManK Mobile Article
Shell基础-4
Shell 基础-4
- MySQL 并发连接数查看
#!/bin/bash
# 本脚本每 2 秒检测一次 MySQL 并发连接数,可以将本脚本设置为开机启动脚本,或在特定时间段执行
# 以满足对 MySQL 数据库的监控需求,查看 MySQL 连接是否正常
# 本案例中的用户名和密码需要根据实际情况修改后方可使用
log_file=/var/log/mysql_count.log
user=root
passwd=123456
while :; do
sleep 2
count=$(mysqladmin -u "$user" -p "$passwd" status | awk '{print $4}')
echo "$(date +%Y-%m-%d) 并发连接数为:$count" >>$log_file
done
- md5 值
#!/bin/bash
# 本示例脚本检测的是/etc 目录下所有的 conf 结尾的文件,根据实际情况,可以修改为其他目录或文件
# 本脚本在目标数据没有被修改时执行一次,当怀疑数据被人篡改,再执行一次
# 将两次执行的结果做对比,MD5 码发生改变的文件,就是被人篡改的文件
for i in $(ls /etc/*.conf); do
md5sum "$i" >>/var/log/conf_file.log
done
- 检测 MySQL 是否存活
#!/bin/bash
# host 为你需要检测的 MySQL 主机的 IP 地址,user 为 MySQL 账户名,passwd 为密码
# 这些信息需要根据实际情况修改后方可使用
host=127.0.0.1
user=root
passwd=123456
mysqladmin -h 127.0.0.1 -u root -p'$passwd' ping &>/dev/null
if [ $? -eq 0 ]; then
echo "MySQL is UP"
else
echo "MySQL is down"
fi
- 数据表备份
#!/bin/bash
# 定义变量 user(数据库用户名),passwd(数据库密码),date(备份的时间标签)
# dbname(需要备份的数据库名称,根据实际需求需要修改该变量的值,默认备份 mysql 数据库)
user=root
passwd=123456
dbname=mysql
date=$(date +%Y%m%d)
# 测试备份目录是否存在,不存在则自动创建该目录
[ ! -d /mysqlbackup ] && mkdir /mysqlbackup
mysqldump -u"$user" -p"$passwd" "$dbname" >/mysqlbackup/"$dbname"-${date}.sql
- 大写转小写
#!/bin/bash
# $1 是位置参数,是你需要转换大小写字母的文件名称
# 执行脚本,给定一个文件名作为参数,脚本就会将该文件中所有的小写字母转换为大写字母
tr "[a-z]" "[A-Z]" <$1