从简单实现mysql自动化备份说起[通俗易懂]

从简单实现mysql自动化备份说起[通俗易懂]从简单实现mysql自动化备份说起 场景 随着云技术的发展,很多公司的产品、应用都已经在云上部署了、云服务器也提供了越来越多的专业性的服务器。例如云服务器 ECS 、数据库 RDS 、对象存储等等。…

从简单实现mysql自动化备份说起

解决办法

以 linux 上的 mysql 为例

  1. 手续编写备份脚本。
mysqldump -uname -p****** databasename > /databak/fileName.sql

代码100分

编写完 mysql 的备份脚本,需要手动测试一遍,看看脚本是否可行,如果可行,则可以进入下一步。然后可能需要设置一下备份的文件名、然后是否需要删除多日之前的备份等。 以下是个完整的例子,当然还能够继续完善,你可以根据自己的要求设置自己的规则。比如压缩、存储路径等等。

代码100分echo "===备份开始==="
mysqldump -uname -p****** databasename | gzip > /databak/filename_$(date +%Y%m%d_%H%M%S).sql.gz
#删除10天前备份的数据
find /databak -mtime +7 -name "*.gz" -exec rm -rf {} ;
echo "===备份成功==="
  1. 设置定时任务 linux 的定时任务设置时通过 crontab 组件来实现,
crontab -e
#录入需要执行的任务
//每天凌晨1:30分执行一次
30 1 * * *  /databak/databak.sh

crontab表达式的功能很强大,这个自己根据要求查API编写。 CRON表达式在线工具

注意:有些 linux 服务器版本中没有自带 crontab 组件,这个时候需要安装组件

代码100分#安装组件
yum install -y vixie-cron
#启动组件
service crond start
  1. 测试 可以先将表达式设置为一分钟执行一次,同时通过 echo 加入输出日志,看任务是否定时执行,如果正常输出,则说明任务正常。
  2. 测试数据库完整性,将备份下拉的数据库还原,看看是否正常。

说明:winserver 的处理方式和 linux 原理是一样的,只是 linux 是通过 crontab 表达式,winserver 是通过任务执行计划来控制脚本执行。

总结

  1. 在系统架构师时,要提前规划服务器的架构,如果条件允许尽量用专用服务器,专用服务器的参数设置、备份机制都是比较合理的。当然规划过程中同样需要考虑个性化的需求。
  2. 整个过程需要熟悉定时任务基本原理, crontab 表达式的书写。这些都是比较底层的东西。我们在做一个简单的任务过程中需要慢慢的扩展自己的知识面。
  3. 从这件事的过程中,你可以发现技术的东西是相同的,例如 linux 和 winserver 的定时任务,又比如 crontab 表达式,linux 和 java(spring) 以及 java(quartz)大致也是类似的。又比如 mysql 的备份和其他数据也大致相同。所以在学习的路上要真正掌握这些东西,善于总结。

最后

如果觉得有帮助,关注公众号:科比可比克 ,我会定期分享一些工作中的一些想法。

科比可比克

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/9057.html

(0)
上一篇 2023-02-16
下一篇 2023-02-16

相关推荐

  • 如何从文本文件读入 SQL 参数[通俗易懂]

    如何从文本文件读入 SQL 参数[通俗易懂]有时我们希望把参数列表分行存储在文本文件里,执行SQL时再拼到in函数里,从而查询出符合条件的记录。 但SQL不能解析文本文件,直接拼到in函数里有困难,所以很多人先把文件导入数据库临时表,再用jo…

    2023-03-03
    164
  • mysql练习题emp,dept

    mysql练习题emp,deptDROP DATABASE IF EXISTS `emp`; CREATE DATABASE `emp`; USE emp; CREATE TABLE `dept`( `deptno` INT(2)

    2023-05-07
    147
  • Spring boot 整合redis「建议收藏」

    Spring boot 整合redis「建议收藏」![](https://oscimg.oschina.net/oscnet/up-534833b899aaf144dc13ef6f35996ec5cfe.JPEG)

    2023-02-10
    158
  • 13款标致408abs保险丝是哪一个_dbvar数据库

    13款标致408abs保险丝是哪一个_dbvar数据库由于MHA(mha4mysql-manager)工具在2018年已经停止维护更新,且不支持GTID复制模式,在原版基础上增补功能难度较大,因此考虑将其重构。

    2023-05-14
    152
  • 包含python入门从这里开始的词条

    包含python入门从这里开始的词条以下是python全栈开发课程学习路线,可以按照这个课程大纲有规划的进行学习:

    2023-11-01
    139
  • 爬虫入门指南

    爬虫入门指南爬虫(英文名称:Web crawler),又称网络爬虫、网络蜘蛛,是一种按照一定规则自动的抓取万维网信息的程序或者脚本。爬虫是搜索引擎的核心组成部分之一,用于对目标网站进行数据抓取、提取和处理,常用于大规模数据采集、更新、监测和分析。

    2024-09-07
    30
  • 使用Python绘制函数曲线

    使用Python绘制函数曲线Python是一个强大的编程语言,不仅能用于各种领域的编程,也能进行数据分析和可视化。本文将介绍如何使用Python绘制函数曲线,可以让读者更好地了解曲线的形状和特征。

    2024-09-12
    24
  • Python __del__方法详解

    Python __del__方法详解Python是一种面向对象的编程语言,因此,相比于其他的编程语言,Python更容易实现内存回收和垃圾收集。Python中的__del__方法是一个特殊的魔术方法,它允许Python在对象被垃圾回收之前执行一些特殊的操作。在本文中,我们将深入探讨Python中的__del__方法,介绍它的特点、优点以及一些重要的注意事项。

    2024-06-18
    45

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注