运维高级课程第三次作业

编写脚本,使用mysqldump实现分库分表备份

#!/bin/bash 
db_user="root"
db_password="Redhat@123"
db_cmd="-u${db_user} -p${db_password}"
exclude_db="information_schema|mysql|performance_schema|sys|Database"
bak_dir=/backup/db/mysqldump_test/
# 判断备份路径是否存在
[ -d ${bak_dir} ] || mkdir ${bak_dir}
# 查找出需要备份的数据库
 mysql ${db_cmd} -e"show databases" -N 2>/dev/null | egrep -v "$exclude_db" > dbtmp
# 循环遍历数据库列表
while read db
do
        #对数据库进行备份
    mysqldump ${db_cmd} --set-gtid-purged=off $db 2>/dev/null | gzip > ${bak_dir}/`date +%F`-$db.sql.gz
    if [ $? -eq 0 ]
    then
        echo "database $db is being backed up ... success!"
    else
        echo "database $db is being backed up ... failure!"
    fi
        #根据数据库进行分表备份 
    [ -d ${bak_dir}/$db ] || mkdir -p ${bak_dir}/$db
    
    mysql ${db_cmd}  $db -e "SHOW TABLES;" | grep -v "Tables_in" > tbtmp
 
    # 循环遍历表名列表
    while read tb
    do
        # 对表进行备份
        mysqldump ${db_cmd} --set-gtid-purged=off $db $tb 2>/dev/null | gzip > ${bak_dir}/$db/`date +%F`-$db-$tb.sql.gz
 
        # 判断是否备份成功
        if [ "$?" -eq 0 ]; then
            echo "Backup of $db.$tb successful!"
        else
            echo "Backup of $db.$tb failed!"
        fi
    done < tbtmp
done < dbtmp
#删除临时文件
rm -rf tbtmp
rm -rf dbtmp                                                                    

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
web系统运维管理课程设计是为了培养学生掌握和运用web系统运维管理的相关知识和技能。课程设置包括基础理论与实践技能,涵盖了web系统的架构设计、部署与维护、性能监控与优化、安全防护等方面。学生将学习到web系统的基本原理及相关技术,并通过实际操作来掌握系统的搭建与管理,以及常见问题的排查与解决。同时,课程也注重引导学生了解实际工作中的经验与技巧,培养其分析和解决实际问题的能力。 课程设计上,可以采用理论授课与实践教学相结合的方式,通过案例分析、项目实践等教学手段,使学生能够在课堂上学到知识,同时通过实际操作来巩固所学内容。课程内容包括系统基础知识、系统监控与故障排查、系统安全防护、性能优化等方面,同时也可针对行业热点和未来发展趋势进行适当的内容拓展,以满足学生的实际需求。 在课程考核方面,可以采用平时成绩、实验报告、大作业等多种方式进行综合评价,注重学生的动手能力和实际解决问题的能力。同时,也可以设置一定的实习环节,让学生有机会在真实工作环境中实践所学知识,提高其实际操作能力。 总的来说,web系统运维管理课程设计旨在培养学生掌握web系统运维管理的理论和实践技能,使其具备在实际工作中从事相关工作的能力和竞争力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值