定时备份mysql数据库

最近在带linux CentOS7.8操作系统的服务器里误删了my sql数据库,恢复起来比较麻烦。还好有一个3月5号该数据库的备份,于是用3月5号的备份恢复了数据库的大部分内容。为了减少以后出现同样问题的损失,打算定时备份mysql数据库。在网上搜了一下,搜到了相关的内容,然后试了一下,但是不成功,接着查找问题,后来找到了问题原因,并解决了该问题。

网上的解决方法是编写一个shell脚本,用这个shell脚本来做备份。在crontab里面写上一条语句来定时执行这个shell脚本。shell脚本内容如下所示。

#!/bin/bash
 
 # MySQL连接参数
 DB_USER="root"
 DB_PASSWORD="123456"
 DB_NAME="db_name"
 
  # 备份文件路径和名称
  BACKUP_DIR="/your/backup/dir"
  BACKUP_FILE="$BACKUP_DIR/backup_$(date +\%Y\%m\%d_\%H\%M\%S).sql"
   
   # 使用mysqldump进行备份
      mysqldump -u$DB_USER -p$DB_PASSWORD $DB_NAME > $BACKUP_FILE
    
    # 删除超过7天的备份文件,保留最近几次备份
    find $BACKUP_DIR -name "backup_*.sql" -type f -mtime +7 -exec rm {} \;

保存该脚本为/home/user_name/backup_script.sh。请注意,该脚本里的秘码、数据库名、备份保存目录等内容修改成你的实际值。接着给该脚本添加可执行权限。

        chomod +x backup_script.sh

接着创建备份文件目录:

        sudo mkdir -P /your/backup/dir/

然后用crontab -e 命令打开一个文件,加入如下一行(不包括注释行)。这时使用的是vi 编辑器。简单的vi命令包括:按 i 进入编辑模式,按Esc 键退出编辑模式,在命令模式下按   :wq 保存并退出vi 。vi 详细的使用说明请在游览器里搜索:vi怎么使用。

# 注释:分钟  小时  天   月  星期  执行命令

             0  2 *  *  *  /home/user_name/backup_script.sh

接着输入:wq 保存并退出该文件。

上面这句话的意思是每天凌晨2点执行backup_script.sh文件。为了测试这条语句能否执行,我修改了定时时间。再用crontab -e 命令打开一个文件,将原来的语句改成如下内容。

        */3  *  *  *  *  /home/user_name/backup_script.sh

这句话的意思是每三分钟执行一次backup_script.sh文件。

但是结果是没有看到备份文件。

于是我手动执行了备份的命令:

        sudo mysqldump -uroot -p123456 $db_name > /your/backup/dir/backup_20240422_181801.sql

这时看到了错误提示:找不到mysqldump。

于是在命令行界面输入:which mysqldump

找到了mysqldump命令具体位置:/usr/local/lighthouse/softwares/mariadb/bin/mysqldump

然后修改脚本文件的备份语句为下面两条语句。

   MYSQLDUMP="/usr/local/lighthouse/softwares/mariadb/bin/mysqldump"
   sudo $MYSQLDUMP -u$DB_USER -p$DB_PASSWORD $DB_NAME > $BACKUP_FILE

保存该脚本文件,等待三分钟左右就看到了备份文件。定时备份数据库成功。

然后再将定时备份语句改成每天凌晨2点进行备份的语句。实现了每天定时备份数据库。

由于我使用的操作系统,设置了我的用户使用sudo命令不需要输入密码。如果你的用户使用sudo命令需要输入密码,建议你用root用户定时执行该备份脚本。具体操作你可以试用一下,并查找问题的原因。

如果用root用户定时执行该脚本,则网上的原脚本不需要写上mysqldump命令所在的目录。这是因为root用户不需要路径 就能找到mysqldump命令。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/569548.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL无法打开情况下读取frm文件的表结构

一、背景: 开发人员通过MySQL客户端工具,可以访问MySQL5.7.6,可以访问具体的DB,可以查看小写表的数据,但是无法查看大写表的数据,报错信息为“table does not exist”。 二、检查与分析: ssh登录…

网络安全主题纪录片

网络安全主题纪录片 文章目录 网络安全主题纪录片第四公民黑客帝国系列龙纹身女孩碟中谍系列虎胆龙威4匿名者终结者2:审判日东方快车谋杀案黑客国家公敌我是谁:没有绝对安全的系统黑客军团速度与激情系列十亿美元大劫案勒索软件的背后黑客的恐惧为什么网…

贪心算法-活动安排问题和背包问题

实验6贪心算法-活动安排问题和背包问题 实验目的: 理解贪心算法的基本思想运用贪心算法解决实际问题 实验内容: 采用贪心方法编程实现以下问题的算法 1.如何安排下列活动使得使用的活动场所最少,并给出具体的安排方法。 活动 a b c …

mybatis 生成器,是否功能实现,需写测试类

一、看视频步骤 请按视频流程走 mybatis-18-CSDN直播 二、视频报错 解决思路 网址: 使用配置 | MyBatis-Plus (baomidou.com) 添加代码: 效果图:√ Tests passed: 前面✔,表示正确。 1为最终结果

面包屑新玩法,ReactRouter+Ant Design实现动态渲染

在Ant Design中,可以通过Breadcrumb组件结合react-router库实现动态生成面包屑导航。具体步骤如下: 定义路由配置数据结构 我们需要在路由配置中添加额外的面包屑相关信息,例如面包屑标题、icon等。例如: const routes [{path: /,breadcrumbName: 首页},{path: /users,brea…

【笔试】03

FLOPS FLOPS 是 Floating Point Operations Per Second 的缩写,意为每秒浮点运算次数。它是衡量计算机性能的指标,特别是用于衡量计算机每秒能够执行多少浮点运算。在高性能计算领域,FLOPS 被广泛用来评估超级计算机、CPU、GPU 和其他处理器…

【macOS】M芯片安装windows10以及配置office

背景 M3芯片Macbook ProParallel Desktop19office word visio打算配置一个好用的笔记本,携带着尽快把论文的正文写完,macOS里面的word排版可能出错,所以像配置一个双系统,里面必然要有的是word和visio,其他没有要求 …

使用linux,c++,创作一个简单的五子棋游戏

#include <iostream> #include <vector> #include <unordered_map> using namespace std; // 棋盘大小 const int BOARD_SIZE 15; // 棋子类型 enum ChessType { EMPTY, BLACK, WHITE }; // 棋盘类 class ChessBoard { private: vect…

大数据学习第四天

文章目录 yaml 三大组件的方式交互流程hive 使用安装mysql(hadoop03主机)出现错误解决方式临时密码 卸载mysql (hadoop02主机)卸载mysql(hadoop01主机执行)安装hive上传文件解压解决版本差异修改hive-env.sh修改 hive-site.xml上传驱动包初始化元数据在hdfs 创建hive 存储目录启…

怎么选出一个95分的产品?选品的逻辑到底是什么?如何不选错

大家好&#xff0c;我是电商花花。 选品定生死。 做电商的应该都会听过这句话&#xff0c;可能有些商家也只是听听就过去&#xff0c;如果没有遇到选品的问题就很难感受到。 如果你体验到一款好的产品带来的流量红利&#xff0c;体验一次爆单&#xff0c;就会知道选出优质的…

Reactor 核心概念-响应式编程-003

🤗 ApiHug {Postman|Swagger|Api...} = 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: We build what we loveApiHug - API design Copilot - IntelliJ IDEs Plugin | MarketplaceReactor 核心库在: reactor-core, 实现。 引入 (gradl…

【头文件】对.h文件的理解

目录 &#x1f31e;1. 头文件的概念 &#x1f30a;1.1 头文件的由来 &#x1f30a;1.2 头文件的作用 &#x1f30a;1.3 在.h文件中实现函数也不会出错的原因 &#x1f31e;2. 简单示例 &#x1f30a;2.1 头文件addition.h &#x1f30a;2.2 头文件接口实现addition.cpp …

Leetcode 119 杨辉三角 II

目录 一、问题描述二、示例及约束三、代码方法一&#xff1a;递推方法二&#xff1a;线性递推 四、总结 一、问题描述 给定一个非负索引 rowIndex&#xff0c;返回「杨辉三角」的第 rowIndex 行。   在「杨辉三角」中&#xff0c;每个数是它左上方和右上方的数的和。   自我…

【JavaEE网络】深入理解Socket套接字及其在网络编程中的应用

目录 Socket套接字UDP VS TCP有连接 VS 无连接可靠传输 VS 不可靠传输面向字节流 VS 面向数据报 全双工 VS 半双工 UDP数据报套接字编程DatagramSocket APIDatagramPacket APIInetSocketAddress APIUDP回显客户端服务器服务器和客户端的工作流程UDP翻译客户端服务器 Socket套接…

轻松找回误删文件,告别企业数据丢失,如何有效利用teamOS二级回收站,提升数据管理效率

在数字化时代&#xff0c;我们越来越依赖电子文件来记录和管理重要信息。 然而&#xff0c;伴随着这种便利的同时&#xff0c;误删或恶意操作导致的文件丢失也成为了一个令人头疼的问题。 那么本文就来谈一谈&#xff0c;企业网盘如何解决误删、甚至恶意删除的问题。 可道云…

高效的数据采集如何促进企业发展?

大数据开启了一个大规模生产、分享和应用数据的时代&#xff0c;它给技术和商业带来了巨大的变化。麦肯锡研究表明&#xff0c;在医疗、零售和制造业领域&#xff0c;大数据每年可以提高劳动生产率0.5-1个百分点。大数据在核心领域的渗透速度有目共睹&#xff0c;然而调查显示&…

ctfshow——XSS

文章目录 XSS介绍什么是xss&#xff1f;XSS危害XSS的分类常用XSSpayload web316——反射型XSSweb317——过滤<script> web318——过滤script、imgweb319——不止过滤script、imgweb320——过滤空格web321——不止过滤空格web322——不止过滤空格web323web324web 325web32…

ubuntu下安装python模块 pip intall xxx报错

报错内容大概如下&#xff1a; WARNING: Retrying (Retry(total4, connectNone, readNone, redirectNone, statusNone)) after connection broken by NewConnectionError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f0fc68d6370>: Failed to establ…

Python 基础、流程、容器、函数

一、基础语法 1.1 前言 1.1.1 Python简介 Python是一门编程语言&#xff0c;Python的作者是Guido van Rossum&#xff08;龟叔&#xff09; Python优点&#xff1a;简单易学 Python与嵌入式、集成电路行业 强大的库和工具生态系统&#xff1a;Python拥有广泛而强大的库和…

javaWeb项目-社区医院管理服务系统功能介绍

项目关键技术 开发工具&#xff1a;IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架&#xff1a;ssm、Springboot 前端&#xff1a;Vue、ElementUI 关键技术&#xff1a;springboot、SSM、vue、MYSQL、MAVEN 数据库工具&#xff1a;Navicat、SQLyog 1、Java技术 Java语…
最新文章