使用shell脚本导出数据
话不多说,直接上码
dbuser='用户名' dbpassword='密码' dbname='库名' backtime=`date +%Y%m%d%H%M%S` logpath='日志路径' datapath='数据存放路径' echo '开始导出数据库' echo '备份时间为'+${backtime}+',备份数据库表'+${dbname}+'开始'>>${logpath}/mysqllog.log for table in $dbname;do source = `mysqldump -u${dbuser} -p${dbpassword} --single-transaction ${table}> ${datapath}/${table}${backtime}.sql` 2>> ${logpath}/mysqllog.log; if ["$?" == 0];then echo '导出数据库...' ${table} echo '开始压缩文件...' cd $datapath tar jcf ${table}${backtime}.tar.bz2 ${table}${backtime}.sql > /dev/null echo '压缩完毕...' echo '删除文件...' rm -f ${datapath}/${table}${backtime}.sql echo '数据库表 ${dbname} 备份成功!!' >> ${logpath}/mysqllog.log echo '备份成功...'
#删除29天前的备份文件 find ${datapath} -mtime +29 -name "*.tar.gz" -exec rm -rf {} \; else #备份失败则进行以下操作 echo '数据库表 ${dbname} 备份失败!!' >> ${logpath}/mysqllog.log echo '备份失败...' fi done
创建一个mysqlbackup.sh的文件,将上述代码放入文件中
启动命令:sh mysqlbackup.sh start
如果想定时进行数据的导出可以参考一些linux的定时任务文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)