Shell基础-4

Tutorial: Shell基础 Category: Shell Published: 2026-04-07 13:58:25 Views: 22 Likes: 0 Comments: 0

Shell 基础-4

  1. 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
  1. md5 值
#!/bin/bash
# 本示例脚本检测的是/etc 目录下所有的 conf 结尾的文件,根据实际情况,可以修改为其他目录或文件
# 本脚本在目标数据没有被修改时执行一次,当怀疑数据被人篡改,再执行一次
# 将两次执行的结果做对比,MD5 码发生改变的文件,就是被人篡改的文件

for i in $(ls /etc/*.conf); do
    md5sum "$i" >>/var/log/conf_file.log
done

  1. 检测 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

  1. 数据表备份
#!/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

  1. 大写转小写
#!/bin/bash

# $1 是位置参数,是你需要转换大小写字母的文件名称
# 执行脚本,给定一个文件名作为参数,脚本就会将该文件中所有的小写字母转换为大写字母

tr "[a-z]" "[A-Z]" <$1