Linux的MySQL 数据库备份单循环与多循环shell脚本

本次测试为centos7.6

Linux环境下定时备份MySQL数据库。脚本使用mysqldump命令进行单次数据库备份,并将备份文件存储在指定的目录中。

MySQL 数据库备份单循环

#!/bin/bash
DATE=$(date +%F_%H-%M-%S)
HOST=localhost
USER="your_username"
PASS="your_password"
BACKUP_DIR=/data/db_backup
DB_LIST=$(mysql -h$HOST -u$USER -p$PASS -s -e "show databases;" 2>/dev/null
|egrep -v "Database|information_schema|mysql|performance_schema|sys")
for DB in $DB_LIST; do
BACKUP_NAME=$BACKUP_DIR/${DB}_${DATE}.sql
if ! mysqldump -h$HOST -u$USER -p$PASS -B $DB > $BACKUP_NAME 2>/dev/null;
then
echo "$BACKUP_NAME 备份失败!"
fi
done

MySQL 数据库备份多循环

#!/bin/bash
DATE=$(date +%F_%H-%M-%S)
HOST=localhost
USER=backup
PASS=123.com
BACKUP_DIR=/data/db_backup
DB_LIST=$(mysql -h$HOST -u$USER -p$PASS -s -e "show databases;" 2>/dev/null
|egrep -v "Database|information_schema|mysql|performance_schema|sys")
for DB in $DB_LIST; do
BACKUP_DB_DIR=$BACKUP_DIR/${DB}_${DATE}
[ ! -d $BACKUP_DB_DIR ] && mkdir -p $BACKUP_DB_DIR &>/dev/null
TABLE_LIST=$(mysql -h$HOST -u$USER -p$PASS -s -e "use $DB;show tables;"
2>/dev/null)
for TABLE in $TABLE_LIST; do
BACKUP_NAME=$BACKUP_DB_DIR/${TABLE}.sql
if ! mysqldump -h$HOST -u$USER -p$PASS $DB $TABLE > $BACKUP_NAME
2>/dev/null; then
echo "$BACKUP_NAME 备份失败!"
fi
done
done

你可以通过以下步骤使脚本定时运行:

  1. 保存这个脚本到一个文件,例如backup_mysql.sh

  2. 给脚本执行权限:chmod +x backup_mysql.sh

  3. 使用crontab设置定时任务。打开当前用户的crontab文件:crontab -e,然后添加一行以设置执行时间,例如每天凌晨1点执行:0 1 * * * /path/to/your/backup_mysql.sh

确保mysqldumpgzip在系统PATH中可用,否则你需要在脚本中指定完整路径。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(delphi11最新学习资料) Object Pascal 学习笔记---第14章泛型

第三部分 高级语言特性 第14章 泛型 ​ Object Pascal 提供的强类型检查对于提高代码的正确性非常有用,这也是我在本书中经常强调的一个主题。不过,强类型检查也可能带来麻烦,因为你可能想编写一个存储过程或类,对不同的数据类型…

32【Aseprite 作图】石头——拆解

1 石头先画轮廓,还是2 4 1 1 2 2 2,这样画一个圆的轮廓 或者2 1 1 3 5 1 1 1 1 2 4 , 2 最暗一层的黑色,做阴影部分,就是7 4 3 2 做最深的部分 各个地方画一些浅色的,做高光部分,上面的高光偏圆…

015、列表_应用场景

1.消息队列 如图所示,Redis的lpush+brpop命令组合即可实现阻塞队列,生产者客户端使用lrpush从列表左侧插入元素,多个消费者客户端使用brpop命令阻塞式的“抢”列表尾部的元素,多个客户端保证了消费的负载均衡和高可用性。 2.文章列表 每个用户有属于自己的文章列表,现…

前端WebSocket与WiFi:深度探索与实战应用

前端WebSocket与WiFi:深度探索与实战应用 在数字化时代,前端技术与网络通信的紧密结合为我们的生活带来了前所未有的便利。其中,WebSocket和WiFi作为前端网络通信的重要组成部分,更是引发了广泛关注。本文将从四个方面、五个方面…

收银系统源码-千呼新零售2.0【智慧供应链】

千呼新零售2.0系统是零售行业连锁店一体化收银系统,包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体,线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货等连锁店使用。 详细介绍请查看下…

FinalShell 配置SSH密钥登陆

转载请标明出处:http://blog.csdn.net/donkor_/article/details/139355489 文章目录 前言生成密钥服务器配置公钥本地配置私钥存储私钥FinalShell配置 总结 前言 本机FinalShell 配置SSH密钥登陆服务器,这样就不再需要使用密码进行登陆了。由于FinalSh…

【StableDiffusion秋叶包反斜杠问题】Failed to find xxx\sd-webui-aki-v4.8\...\xxx.pth

一、问题发生 1.在我额外安装预处理器时报错 意思是没办法找到有这么一个包(但我已经把这个包扔进去了) 完整报错: Failed to find S:\app_AI\stableDiffusion-webui-aki\sd-webui-aki-v4.8\extensions\sd-webui-controlnet\annotator\dow…

电机测试方法的介绍与功能实现(T测试方法)

目录 概述 1 理论介绍 2 实现原理 2.1 旋转式编码器原理 2.2 系统实现框图 2.3 测速原理 2.4 计算速度值 3 STM32Cube配置项目 3.1 软件版本信息 3.2 配置项目 4 代码实现 4.1 电机速度控制 4.2 速度计算函数 4.3 功能实现 5 测试 概述 本文主要介绍测试电机速…

LangGraph简介

LangGraph 概述及用法 LangGraph 是 LangChain 的一个扩展,旨在通过将步骤建模为图中的边缘和节点,构建具有大型语言模型(LLMs)的强大和有状态的多角色应用程序。LangGraph 提供了用于创建常见类型代理的高级接口,以及…

Vue项目运行页面禁止缩放【移动端和PC端都禁止缩放】解决方案

Vue项目运行页面禁止缩放【移动端和PC端都禁止缩放】解决方案,有的人手很J,总喜欢放大缩小,从而会导致页面错乱,以下是解决方案,简单有效 效果图PC:滚轮缩放和其他缩放都会禁止 移动端效果图:各种手机平板…

SSL发送邮件时如何配置客户端确保安全性?

怎么使用SSL安全协议通过AokSend发送加密的电子邮件? SSL是一种常用的加密通信协议,用于确保数据在客户端和服务器之间的安全传输。AokSend将讨论如何通过配置客户端确保SSL发送邮件的安全性,并介绍如何使用SSL安全协议通过AokSend发送加密的…

zibll-V7.7最新版2024完美破解授权可用(含授权教程)

最近这个正版安装包流出来了,试了一下用以前的绕过授权方法,一样可以授权。 源码下载:https://download.csdn.net/download/m0_66047725/89379057 更多资源下载:关注我。

使用Java进行数据分析和处理:应用在实际业务场景中的技术

在当今数据驱动的时代,数据分析和处理已经成为各行各业中不可或缺的一部分。Java作为一种广泛应用于企业级开发的编程语言,也在数据领域展现出了强大的能力。本文将探讨如何使用Java进行数据分析和处理,以及在实际业务场景中应用的技术。 ##…

力扣200. 岛屿数量(BFS)

Problem: 200. 岛屿数量 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 1.定义方向数组:定义一个方向数组 DIRECTIONS,表示上、下、左、右四个方向的移动。 2.获取网格的行数和列数同时初始化一个计数器 numIslands 用于记录岛屿的数量。 …

什么是 Redis 缓存?它解决了什么问题?怎么使用它?

前言 写在前面,让我们从 3 个问题开始今天的文章:什么是 Redis 缓存?它解决了什么问题?怎么使用它? 在笔者近 3 年的 Java 一线开发经历中,尤其是一些移动端、用户量大的互联网项目,经常会使用…

数学建模 —— 数学规划模型(5)

目录 一、数学规划 1.1 数学规划问题一般形式 二、常见规划模型 2.1 线性规划(Linear Programming) 2.1.1 定义 2.1.2 一般形式 2.1.3 标准形式 2.1.4 求解 2.2 整数规划(Integer Programming) 2.2.1 单目标规划 2.…

Mybatis学习之Spring boot整合Mybatis示例

文章目录 1.Mybatis是什么?2.整合SSM2.1 创建数据库表2.2 pom.xml2.3 启动入口2.4 web层2.5 service层2.6 dao层2.7 properties.yml 3.测试4.异常Invalid value type for attribute factoryBeanObjectType: java.lang.String5.总结 Spring SpringMVC Mybatis是现在…

nacos配置发布流程详解

1、安装必备环境: 首先,需要安装Java和Maven。Nacos是基于Java开发的,因此Java环境是必不可少的。同时,如果选择从源码部署Nacos,那么需要Maven来构建项目。 2、安装MySQL: Nacos支持使用MySQL作为外置数…

RT_thread nano移植Finsh

参考连接: https://blog.csdn.net/baseball214/article/details/131341722 移植的前提是,你已经有一个可以使用的nano功能. 1.将rtthread-nano-master\rt-thread\components文件复制到工程. 2.添加Finsh中的.c以及相关.h头文件路径 3.注释掉finsh_config.h文件中以下两个宏…

C语言中的数据类型转换:隐式类型转换与显示类型转换

一. 简介 本文简单学习一下,C语言中的数据类型转换。重点学习一下隐式类型转换。 二. C语言中的数据类型转换:隐式类型转换与显示类型转换 类型转换(TypeCasting):在C语言中是将一种数据类型值转换为另一种数据类型…