一、Liunx服务器下数据库定时备份

1、编写mysql在docker容器中备份的shell脚本:

#!/bin/bash#  2020-11-15#docker启动的mysql备份mysql_user="root"#数据库密码,注意自行修改mysql_password="Abc234!"mysql_host="192.168.1.43"mysql_port="3306"mysql_charset="utf8mb4"#备份文件存放的目录,自己创建位置mkdir -p /home/backup/mysql/backup_location=/home/backup/mysql/
expire_backup_delete="ON"#备份文件存放的天数expire_days=7backup_time=`date +%Y-%m-%d-%H-%M`backup_dir=$backup_location
#指定忽略的表#--ignore-table=tablename#docker exec -i mysql mysqldump -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password -B zszy-omsdb | gzip> $backup_dir/mysql_backup_dbname_$backup_time.sql.gzecho -e "\033[32m ------------------- 开始全量备份数据库,请稍等。。。---------------- \033[0m"docker exec -i mysql mysqldump -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password --all-databases | gzip> $backup_dir/mysqldb_backup_$backup_time.sql.gzecho -e "\033[32m -------------------成功备份数据至文件:$backup_dir/mysqldb_backup_$backup_time.sql.gz---------------- \033[0m"
if [ "$expire_backup_delete" == "ON" -a "$backup_location" != "" ];then `find $backup_location/ -type f -mtime +$expire_days | xargs rm -rf` echo -e "\033[32m ------------------- MySQL数据库已备份 $expire_days天前的备份已删除---------------- \033[0m" #greenfi

2、执行定时计划,每天凌晨1点执行备份

进入 vi /etc/crontab

加入如下的内容

# /home/shell/mysqlbackup.sh 为脚本的路径
00 01 * * * root /home/shell/mysql-backup.sh

修改后记得重启crond使改动生效

service crond restart

你也先测试一分钟执行一次的效果(注意这是测试每一分钟执行一次的,测试成功后要改成上面的每天凌晨执行一次)

*/1 * * * * root /home/shell/mysql-backup.sh

注意root前后只能一个空格

可以执行命令: tail -f /var/log/cron 查看效果定时任务的执行效果

3、数据库还原

1)、解压文件

gzip -d /home/backup/mysql/mysqldb_backup_2022-11-12-20-35.sql.gz

2)、拷贝文件到容器中

docker cp /home/backup/mysql/mysqldb_backup_2022-11-12-20-35.sql mysql:/var

3)、进入mysql容器中

docker exec -it mysql bin/bash

4)、执行如下命令后会要求输入mysql密码

mysql -uroot -p

5)、将拷贝到容器中的.sql文件用于还原mysql数据库

source /var/mysqldb_backup_2022-11-12-20-35.sql

二、Navicat数据库自动备份

1、新建配置文件:选中数据库备份---》右键---->新建备份-----》保存---》输入配置文件名称

此时,你在新建备份对话框中可以选择对象中的信息,去掉一些不想备份的表

2、点击自动运行----》新建批处理作业

3、在新建批处理作业页面:1备份---》2选择数据库----》3双击数据库配置文件---》点击保存后输入名称

4、1设置任务计划---》2触发器----》3新建

在新建触发器页面我们定时的是每天晚上23点备份

mysql系列14---mysql数据库还原与备份的更多相关文章

  1. shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机

    shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机 备份mysql中的库或者表 mysqldump 常用参数详解: -u 用户名 -p 密码 -h ...

  2. MySQL 多实例数据库还原脚本-备份集与端口对应

    版本:5.5.14 OS: ConetOS 6.3 1.创建recover.sh [root@yoon  export]# vi  recover.sh #!/bin/bash bakdir=/exp ...

  3. MySQL 系列(四)主从复制、备份恢复方案生产环境实战

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  4. MySQL系列:走进数据库,相关概念你都明白吗?

    数据库,一个我们常常提到的名词,但是你有没有想过,它到底是什么意思呢,而我们常说的 MySQL.Oracle 等又到底指什么呢? 数据库 数据库(DataBase),简称 DB,是数据库是存储数据的集 ...

  5. oracle数据库还原以及备份 包括快速备份(并发压缩)

    expdp jhpt/XXXX directory=databackup dumpfile=dpfile_201512091300_%U.dmp filesize=5G parallel=8 comp ...

  6. Mysql系列五:数据库分库分表中间件mycat的安装和mycat配置详解

    一.mycat的安装 环境准备:准备一台虚拟机192.168.152.128 1. 下载mycat cd /softwarewget http:-linux.tar.gz 2. 解压mycat tar ...

  7. Mysql系列四:数据库分库分表基础理论

    一.数据处理分类 1. 海量数据处理,按照使用场景主要分为两种类型: 联机事务处理(OLTP) 面向交易的处理系统,其基本特征是原始数据可以立即传送到计算机中心进行处理,并在很短的时间内给出处理结果. ...

  8. Mysql系列二:Mysql 开发标准规范

    原文链接:http://www.cnblogs.com/liulei-LL/p/7729983.html 一.表设计 1. 库名.表名.字段名使用小写字母,“_”分割. 2. 库名.表名.字段名不超过 ...

  9. MySQL系列(二)--MySQL存储引擎

    影响数据库性能的因素: 1.硬件环境:CPU.内存.存盘IO.网卡流量等 2.存储引擎的选择 3.数据库参数配置(影响最大) 4.数据库结构设计和SQL语句 MySQL采用插件式存储引擎,可以自行选择 ...

  10. MySQL系列:MySQL的基本使用

    数据库的基本操作 在MySQL数据库中,对于一个MySQL示例,是可以包含多个数据库的. 在连接MySQL后,我们可以通过 show databases; 来进行查看有那么数据库.这里已经存在一些库了 ...

随机推荐

  1. ServiceWorker工作机制与生命周期:资源缓存与协作通信处理

    在 <web messaging与Woker分类:漫谈postMessage跨线程跨页面通信>介绍过ServiceWorker,这里摘抄跟多的内容,补全 Service Worker 理解 ...

  2. Solon2 的 Bean 生命周期

    Solon 框架的 Bean 是被容器托管的,所以它的生命周期只限定在容器内部: 时机点 说明 补充 AopContext::new() 是在应用初始化时执行 ::new() AopContext:: ...

  3. 一次惨痛教训让我写了个Windows定期备份文件脚本

    前言 说实话在写这篇文章的时候,咸鱼不禁又想起了那件男默女泪的往事   我喜欢做笔记,我觉得好记性不如烂笔头,所以在我的学生以及职业生涯阶段,我用过四款笔记应用--Onenote.语雀.印象笔记.Ty ...

  4. SpringBoot 项目实战 | 瑞吉外卖 Day04

    该系列将记录一份完整的实战项目的完成过程,该篇属于第四天 案例来自B站黑马程序员Java项目实战<瑞吉外卖>,请结合课程资料阅读以下内容 该篇我们将完成以下内容: 文件上传下载 新增菜品 ...

  5. JSP标准标签库(JSTL)个人使用指南

    前排提示,本篇仅涉及 JSTL 的配置和简要介绍 JSTL 的 Core 和 Functions 标签库中几个常用的标签.更加详细的内容,博主会贴相应超链接. 注意:本教程使用的 JSTL 1.2,如 ...

  6. 「Codeforces 1131D」Gourmet Choice

    Description 美食家 Apple 先生是一家美食杂志的主编.他会用一个正整数来评价每一道菜. 美食家在第一天品尝第 $n$ 道菜,第二天品尝了 $m$ 道菜.他制作了一张 $n\times ...

  7. java - 运行可执行文件 (.exe)

    package filerun; import java.io.File; import java.io.IOException; public class RunExe { public stati ...

  8. Redis在Liunx系统下使用

    Redis使用 前言 如何在Linux服务器上部署Redis,版本号如下: Redis版本 5.0.4 服务器版本 Linux CentOS 7.6 64位 下载Redis 进入官网找到下载地址 ht ...

  9. 数据-CRUD

    CRUD Create 创建 Read 读取 Update 更新 Delete 删除 场景 只要存在数据结构概念,就必存在CRUD

  10. [转帖]带你重走 TiDB TPS 提升 1000 倍的性能优化之旅

    https://tidb.net/blog/29074d86#TiDB%20%E6%80%A7%E8%83%BD%E5%92%8C%E7%A8%B3%E5%AE%9A%E6%80%A7%E7%9A%8 ...