MySQL数据库定时备份 Shell脚本

编写shell脚本对mysql数据库进行定时备份 在linux上安装mysql并建立测试库,编写shell脚本对此库使用mysqldump进行定时备份和历史备份文件清理(保留3天),注意脚本的通用性和扩展性 1 mysq数据库的安装    yum install mysql-server   //安装服务端    yum install mysql-devel    yum install mysql             //安装客户 阅读详情

1. 创建以下文件夹

    mkdir  /home/mysql/
    mkdir  /home/mysql/db
    mkdir  /home/mysql/log

2. 在home/mysql 文件夹内创建 Shell脚本

 vim  BackUpMysql.sh

3. 复制以下内容放入BackUpMysql.sh
注意:需要把数据库信息配置成你自己的

 #!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
 
#数据库ip
DBHOST='你的数据库ip'
#数据库用户名
DBUSER='你的数据库用户名'
#数据库用密码
DBPASSWD='你的数据库用密码'
#需要备份的数据库,多个数据库用空格分开
DBNAME='你的数据库名字'
 
#备份时间
backtime=`date +%Y-%m-%d_%H%M%S`
#备份路径(当前目录)
BACKPATH=$(dirname $(readlink -f $0))
echo $BACKPATH
#日志备份路径
LOGPATH="${BACKPATH}/log"
#数据备份路径
DBPATH="${BACKPATH}/db"
 
#创建备份目录
[ ! -d "${LOGPATH}" ] && mkdir -p "${LOGPATH}"
[ ! -d "${DBPATH}" ] && mkdir -p "${DBPATH}"
 
#日志记录头部
echo "备份时间为${backtime},备份数据库表 ${DBNAME} 开始" >> ${LOGPATH}/mysqlback.log
 
#正式备份数据库
for table in $DBNAME; do
source=`mysqldump -u ${DBUSER} -h${DBHOST} -p${DBPASSWD} ${table}> ${LOGPATH}/${backtime}.sql` 2>> ${LOGPATH}/mysqlback.log;
 
#备份成功以下操作 $?获取上一个命令的操作结果,0代表成功
if [ "$?" == 0 ];then
cd ${LOGPATH}
#为节约硬盘空间,将数据库压缩
tar -czf ${DBPATH}/${table}${backtime}.tar.gz ./${backtime}.sql > /dev/null
#删除原始文件,只留压缩后文件
rm -f ${LOGPATH}/${backtime}.sql
#删除七天前备份,也就是只保存7天内的备份
find $DBPATH -name "*.tar.gz" -type f -mtime +7 -exec rm -rf {} \; > /dev/null 2>&1
echo "数据库表 ${DBNAME} 备份成功!!" >> ${LOGPATH}/mysqlback.log
else
#备份失败则进行以下操作
echo "数据库表 ${DBNAME} 备份失败!!" >> ${LOGPATH}/mysqlback.log
fi
done

4. 创建定时任务
执行以下命令

  crontab -e 

进入编辑模式写入定时任务执行的时间和需要执行的shell脚本位置,
我是在/home/mysql 目录创建的,所以这里需要执行的是如下脚本,每天晚上23:59执行

59 23 * * * /home/mysql/BackUpMysql.sh

查看定时任务

crontab -l

数据会存放在

/home/mysql/db

路径下

注:删除七天前备份,也就是只保存7天内的备份

Linux服务器定时备份MySQL数据库的Shell脚本 在Linux服务器上定期备份MySQL数据库是一个重要的任务,它可以保护数据免受意外删除、硬件故障或其他灾难性事件的影响。通过编写一个Shell脚本并使用cron调度程序,我们可以实现Linux服务器上MySQL数据库的每天定时备份。这个备份过程将确保数据的安全性,并提供在灾难发生时进行恢复的能力。脚本将连接到MySQL数据库,并将所有数据库备份到指定的目录中。保存并关闭文件后,cron将按计划自动执行脚本,并在指定的时间备份MySQL数据库。现在,我们可以通过运行脚本来执行MySQL数据库备份。 阅读详情

相关推荐

定时备份的数据表 shell脚本(非常实用)

定时备份的数据表 shell脚本(非常实用),并且加上linux crontab。满足日常需求 ~~

MySQL之定时备份(Linux版本)

这里分享学习的内容是MySQL在Linux服务器上的定时备份,根据实际业务需求,一般都是在凌晨某个时间段,对数据库进行备份。数据库的定时备份,如果有分主从库,最好在从库上做备份;如果只有一个数据库,条件允许的情况下,备份地址不建议和应用数据库放在一个服务器上,以免服务器受到攻击,备份文件也丢失。

weixin_43846391的博客 1521

密评实战:应用层数据安全防护全解析

本文从实战角度深度解析三级信息系统密评中应用层数据安全防护的核心要点。围绕身份鉴别、访问控制、数据传输与存储安全、不可否认性等关键环节,结合国密算法(SM2/SM3/SM4)与智能密码钥匙等合规技术,提供了从代码审查、日志分析到流量验证的全链路排查方法,助力构建真正符合密评标准的数据安全防线。

weixin_29291185的博客 461

【Shell】【MySQL】使用shell自动备份mysql数据

shell脚本的主要代码。

qq_39057568的博客 512

共享单车需求预测问题:建模篇

机器学习训练营——机器学习爱好者的自由交流空间(qq群号:696721295) 在上一篇里,我们使用可视化的方法分析了“共享单车”的数据集,理解了特征(变量)之间的关系。我们将在本篇建立几个模型预测单车的需求量,并比较它们的预测效果。 随机森林填充法 首先,导入必需的库、训练集和检验集。 import pylab import calendar import numpy as np impor...

wong2016的博客 1万+

锁定放大器

锁定放大器

qq_46757048的博客 4706

使用shell脚本来定时备份Mysql数据库与数据表

定时分库分表来备份Mysql数据库

isammy100_csdn的博客 1124

(OSTrack)Joint Feature Learning and Relation Modeling for Tracking A One-Stream Framework

Joint Feature Learning and Relation Modeling for Tracking A One-Stream Framework (OSTrack)

小火山的博客 1653

mysql数据库:使用 bash脚本 + 定时任务 自动备份数据

mysql数据库:使用 bash脚本 + 定时任务 自动备份数据

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 2万+

软考-高级-信息系统项目管理第四版(完整24章全笔记)

包 括:信息系统、业务应用信息系统、信息安全系统、信息系统工程、业务应用信息系统工程和 信息安全系统工程等业务应用信息系统是支撑业务运营的计算机应用信息系统,信息安全系统工程是指为了达到建设好信息安全系统的特殊需要而组织实施的工程。项目经理由执行组织委派, 负责领导团队实现项目目标。①制定项目章程:②制订项目管理计划:③指导与管理项目工作:④管理项目知识:⑤监控项目工作:⑥实施整体变更控制:项目范围管理过程包括:规划范围管理;收集需求;定义范围;创 建WBS;确认范围;控制范围;

weixin_44934104的博客 3万+

【信息系统项目管理师】高分论文:论信息系统项目的整合管理(绩效考核系统)

我们将项目管理计划中的子计划包括项目范围、进度、成本、质量管理计划,过程改进计划,人力资源管理计划,风险、采购管理计划,干系人管理计划,项目范围、成本、进度基准作为依据,查看项目的各个方面,通过组织全体团体成员会议来解读由各监控过程提供的信息,之后我与项目管理团队一起制订所需措施,确保项目绩效达到预期要求。在一个项目中,变更是必然的,也是不可避免的,进度拖延,成本失控,客户有新的需求等都会引起项目的变更。在本项目中,我要求有处于工作状态的产品,开发人员才可以对其任意修改,修改完成后,重新入库即可。

数据知道的博客 6888

shell脚本定时自动备份mysql数据库和mysql恢复数据

shell脚本定时自动备份mysql数据库和mysql恢复数据

xiaodaimu00的博客 2024

软考高级网络规划设计师教程(第3版)

"本书是由工业和信息化部教育与考试中心组织编写的考试用书,依据《网络规划设计师考试大纲》(2026年审定通过)编写。本书分为两篇:第一篇为网络规划与设计综合知识,其中第1章介绍计算机网络基础知识,第2章介绍网络互连与互联网,第3章介绍网络规划与设计的知识和方法,第4章介绍网络资源设备,第5章介绍网络安全技术,第6章介绍标准化和网络安全法规;第二篇为案例实践,其中第7章介绍网络规划案例,第8章介绍网络故障分析与处理案例,第9章介绍网络安全部署案例,第10章介绍网络规划与设计论文写作的指导思想和写作技巧。

鹿鸣天涯 3945

LINUX下定时备份MYSQL数据库SHELL脚本

备份脚本 backupMysqlData.sh #!/bin/bash #备份SQL文件的路径 backupdir=/home/hdkg/mysqldata/ #执行导出数据库操作 mysqldump --user=root --password=password --host=localhost --port=3306 dataBaseName > $backupdir/backu...

诚的博客 469

结构优化软件:OptiStruct_(11).拓扑优化

在OptiStruct中,设计空间可以通过定义设计区域来实现。设计区域是结构中可以进行材料变化的部分。几何区域:通过几何选择工具选择特定的区域。网格区域:通过网格选择工具选择特定的单元。假设我们有一个简单的梁结构模型,网格文件为beam.fem。我们希望在梁的中部进行拓扑优化,以减轻重量并保持刚度。

kkchenjj的博客 1371

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Linux下定时备份MySQL数据库的Shell脚本

Linux下定时备份MySQL数据库的Shell脚本 对任何一个已经上线的网站站点来说,数据备份都是必须的。无论版本更新还是服务器迁移,备份数据的重要性不言而喻。人工备份数据的方式不单耗费大量时间和精力,还灰常不专业的说。于是,有了下面这段脚本的出现。参考了网上的很多教程,外加自己的测试,以下脚本经测试可用。#!/bin/bash#ShellComm...

denggezhu7173的博客 128

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

创建SHELL脚本定时备份mysql数据库

1.创建脚本文件 vim backupmysql.sh 创建脚本内容如下: #!/bin/sh db_user="root" db_passwd="123456" db_name="userdb" name="$(date +"%Y%m%d%H%M%S")" /usr/bin/mysqldump -u$db_user -p$db_passwd $db_name >>/...

科比龙篮的博客 295

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

linux下定时备份mysql数据库的shell脚本_linux中shell脚本进行MySQL数据库定时备份

数据库备份有很多种方法,最常用的一般是数据库自动定时备份了,下面我来介绍在linux中利用shell脚本进行MySQL数据库定时备份方法。具体方法代码如下#!/bin/bash#Shell Command For Backup MySQL Database Everyday Automatically By Crontab#Author : Carlos Wong#Date : 2010-08-2...

weixin_39597868的博客 259

shell脚本定时备份mysql数据库

使用mysqldump已经shell脚本定时备份数据库

zhouzzzjj的博客 835

shell脚本定时备份MySQL数据库数据并保留指定时间

公司用到的MySQL数据库,经常有同事通过一顿骚操作把一些关键的配置数据误删,每次恢复都要花上不少时间,于是写了个shell脚本,结合corntab每天凌晨备份数据库,并保留7天。 此备份脚本也可用于生产环境MySQL数据库定时备份。 环境:CentOS 7.5 / MySQL 5.7 #!/bin/sh # 数据库账号信息 DB_USER="root" DB_PWD="root" DB_HOST="127.0.0.1" DB_PORT="3306" # MYSQL所在目录 MYSQL_DI

446

自动定时备份 mysql 数据库 的 shell 脚本

一、前颜 通过 mysqldump 和 crontab 实现定时备份 mysql 数据库 二、备份数据库的脚本如下 backMysql.sh #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin export PATH #数据库ip DBHOST='xxx.xxx.xxx.xxx' // you...

weixin_34123613的博客 109

centos定时备份mysql数据库 用shell脚本实现

数据很重要,上线的项目必须数据库做到定时备份 数据量小的可用如下方法,下面的是全量备份, 数据量大的肯定行不通的,这时可用mysql主从复制了 注意事项: 1、shell脚本的mysqldump命令必须使用绝对路径,首先用find / -name 'mysqldump' 找到真实绝对路径,否则备份出来文件0kb  2、在终端用不需加目录,说明安装的时候已经放入系统bin全局变

爱代码也爱生活 8297

linux编写shell脚本文件定时备份mysql数据库

目录 编写shell脚本文件 定时备份实现 编写shell脚本文件 db_user="数据库用户" db_password="数据库密码" db_name="需要备份的数据库名" #the directory for story your backup file.you shall change this dir backup_dir="/data/db_backup/mysql" #date format for backup file (dd-mm-yyyy) time="$(date

weixin_43082983的博客 202

MySQL【实践 01】Linux 环境 MySQL 数据库备份 shell 脚本(脚本源码及说明+定时任务配置+数据库恢复测试)粘贴可以_shell 脚本实现mysql备份实验报告

bin/bash。

2501_90401405的博客 756

脚本定时备份mysql数据库_shell脚本每天自动备份mysql数据库

一、mysql提供了一个mysqldump的工具可以方便的导出导入数据库信息;二、使用命令行shell测试执行mysqldump,理解必备的参数,查看生成的sql备份文件是否符合需求;/usr/bin/mysqldump --opt -ubatsing -pbatsingpw -hlocalhost timepusher > /mnt/mysqlBackup/db_`date +%F`.sq...

weixin_35159324的博客 359
上一篇: MySQL一对多查询
下一篇: SpringBoot 常用工具类
可乐加冰块.
博客等级 码龄10年 4331粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值