我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL如何实现定时全库备份数据库

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL如何实现定时全库备份数据库

这篇文章给大家分享的是有关MySQL如何实现定时全库备份数据库的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

    一、MySQL数据备份

    1.1、 mysqldump命令备份数据

    在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump,首先我们简单了解一下mysqldump命令用法:

    #MySQLdump常用mysqldump -u root -p --databases 数据库1 数据库2 > xxx.sql

    1.2、 mysqldump常用操作示例

    备份全部数据库的数据和结构

    mysqldump -uroot -p123456 -A > /data/mysqlDump/mydb.sql

    备份全部数据库的结构(加 -d 参数)

    mysqldump -uroot -p123456 -A -d > /data/mysqlDump/mydb.sql

    备份全部数据库的数据(加 -t 参数)

    mysqldump -uroot -p123456 -A -t > /data/mysqlDump/mydb.sql

    备份单个数据库的数据和结构(,数据库名mydb)

    mysqldump -uroot-p123456 mydb > /data/mysqlDump/mydb.sql

    备份单个数据库的结构

    mysqldump -uroot -p123456 mydb -d > /data/mysqlDump/mydb.sql

    备份单个数据库的数据

    mysqldump -uroot -p123456 mydb -t > /data/mysqlDump/mydb.sql

    备份多个表的数据和结构(数据,结构的单独备份方法与上同)

    mysqldump -uroot -p123456 mydb t1 t2 > /data/mysqlDump/mydb.sql

    一次备份多个数据库

    mysqldump -uroot -p123456 --databases db1 db2 > /data/mysqlDump/mydb.sql

    1.3、 还原mysql备份内容

    有两种方式还原,第一种是在MySQL命令行中,第二种是使用SHELL行完成还原

    在系统命令行中,输入如下实现还原:

    mysql -uroot -p123456 < /data/mysqlDump/mydb.sql

    在登录进入mysql系统中,通过source指令找到对应系统中的文件进行还原:

    mysql> source /data/mysqlDump/mydb.sql

    二、 编写脚本维护备份的数据库文件

    在linux中,通常使用BASH脚本对需要执行的内容进行编写,加上定时执行命令crontab实现日志自动化生成。

    以下代码功能就是针对mysql进行备份,配合crontab,实现备份的内容为近一个月(31天)内的每天的mysql数据库记录。

    2.1、 编写BASH维护固定数量备份文件

    在Linux中,使用vi或者vim编写脚本内容并命名为:mysql_dump_script.sh

    #!/bin/bash#保存备份个数,备份31天数据number=31#备份保存路径backup_dir=/root/mysqlbackup#日期dd=`date +%Y-%m-%d-%H-%M-%S`#备份工具tool=mysqldump#用户名username=root#密码password=TankB214#将要备份的数据库database_name=edoctor#如果文件夹不存在则创建if [ ! -d $backup_dir ]; then         mkdir -p $backup_dir; fi#简单写法  mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql$tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql#写创建备份日志echo "create $backup_dir/$database_name-$dd.dupm" >> $backup_dir/log.txt#找出需要删除的备份delfile=`ls -l -crt  $backup_dir2 * * * echo "Have a break now." >> /tmp/test.txt

    晚上11点到早上8点之间每两个小时和早上八点

    0 23-7/2,8 * * * echo "Have a good dream" >> /tmp/test.txt

    每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点

    0 11 4 * 1-3 command line

    1月1日早上4点

    0 4 1 1 * command line SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号 HOME=/

    每小时执行/etc/cron.hourly内的脚本

    01 * * * * root run-parts /etc/cron.hourly

    每天执行/etc/cron.daily内的脚本

    02 4 * * * root run-parts /etc/cron.daily

    每星期执行/etc/cron.weekly内的脚本

    22 4 * * 0 root run-parts /etc/cron.weekly

    每月去执行/etc/cron.monthly内的脚本

    42 4 1 * * root run-parts /etc/cron.monthly

    注意: "run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名。  

    每天的下午4点、5点、6点的5 min、15 min、25 min、35 min、45 min、55 min时执行命令。

    5,15,25,35,45,55 16,17,18 * * * command

    每周一,三,五的下午3:00系统进入维护状态,重新启动系统。

    00 15 * * 1,3,5 shutdown -r +5

    每小时的10分,40分执行用户目录下的innd/bbslin这个指令:

    10,40 * * * * innd/bbslink

    每小时的1分执行用户目录下的bin/account这个指令:

    1 * * * * bin/account

    三、执行效果截图

    以下是我的测试每分钟的截图效果,其对应代码如下:

    * * * * * /root/mysql_backup_script.sh

    效果截图:

    MySQL如何实现定时全库备份数据库

    其中的log.txt记录备份的操作详细日志:

    MySQL如何实现定时全库备份数据库

    感谢各位的阅读!关于“MySQL如何实现定时全库备份数据库”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    MySQL如何实现定时全库备份数据库

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    MySQL如何实现定时全库备份数据库

    这篇文章给大家分享的是有关MySQL如何实现定时全库备份数据库的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、MySQL数据备份1.1、 mysqldump命令备份数据在MySQL中提供了命令行导出数据库数据以
    2023-06-20

    mysql数据库定时备份怎么实现

    有多种方法可以实现MySQL数据库的定时备份,以下是其中一种常用的方法:使用crontab定时任务:首先创建一个备份脚本,比如backup.sh,该脚本可以使用mysqldump命令来备份数据库,如下所示:#!/bin/bashmysql
    mysql数据库定时备份怎么实现
    2024-04-12

    mysql如何实现定时自动备份数据库功能

    这篇文章主要介绍mysql如何实现定时自动备份数据库功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!第一种,数据跑在服务器上,如果只想定时把数据库备份放在服务器(此处服务器系统为centos7)上,可如下设置:首先
    2023-06-20

    定时任务备份mysql数据库,同时备份多个数据库

    编写备份数据库的shell脚本创建脚本mkdir -p /root/mysql_dump/datacd /root/mysql_dumpvim mysql_back.sh脚本内容如下#!/bin/sh# File: /root/mysql_dump/mysql
    2018-09-25

    Linux shell实现每天定时备份mysql数据库

    每天定时备份mysql数据库任务,删除指定天数前的数据,保留指定天的数据; 需求:1,每天4点备份mysql数据;2,为节省空间,删除超过3个月的所有备份数据;3,删除超过7天的备份数据,保留3个月里的 10号 20号 30号的备份数据;#
    2022-06-04

    Mysql数据库如何手动及定时备份

    这篇文章给大家分享的是有关Mysql数据库如何手动及定时备份的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。手动备份1)cmd控制台:mysqldump -uroot -proot 数据库名 [表名1,表名2...
    2023-06-25

    mysql数据库定时每天备份怎么实现

    实现MySQL数据库定时每天备份可以使用以下方法:使用cron定时任务:在Linux系统上,可以使用cron定时任务来实现每天备份MySQL数据库。通过编辑cron表达式,指定备份任务的执行时间。在cron任务中,使用`mysqldump`
    2023-10-24

    Linux下如何实现MySQL数据库每天定时自动备份

    在云计算的浪潮下,企业多将业务部署在云上。对于数据库中的数据,直接使用云数据库自带的备份功能实现备份,操作简单。但是云数据库备份数据的存储空间有限制,一旦超出存储量便自动关闭备份功能,运维人员往往也会忽略这个问题,如果这时遭遇系统故障,面临的就是数据丢失。 下
    Linux下如何实现MySQL数据库每天定时自动备份
    2016-01-07

    sql数据库定时备份如何弄

    要定时备份一个SQL数据库,可以使用数据库管理工具或者编写脚本来执行备份操作。以下是一些常用的方法:使用数据库管理工具:大多数数据库管理工具都提供了定时备份数据库的功能。例如,可以使用MySQL Workbench来创建一个定时任务来备份M
    sql数据库定时备份如何弄
    2024-04-09

    sqlserver定时备份数据库怎么实现

    要实现定时备份数据库,可以使用SQL Server的内置功能——作业(Job)。以下是实现步骤:打开SQL Server Management Studio,连接到要备份的数据库服务器。在“对象资源管理器”中展开“SQL Server 代理
    sqlserver定时备份数据库怎么实现
    2024-04-09

    数据库实时备份如何做

    要实现数据库的实时备份,可以使用以下方法:1. 使用数据库的内置备份功能:大多数数据库管理系统(DBMS)都提供了备份和恢复功能。你可以使用DBMS提供的命令或工具来执行数据库的实时备份。这些工具通常会将数据库的数据和日志文件复制到备份文件
    2023-08-30

    编程热搜

    目录