mysql系列14---mysql数据库还原与备份
一、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数据库还原与备份的更多相关文章
- shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机
shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机 备份mysql中的库或者表 mysqldump 常用参数详解: -u 用户名 -p 密码 -h ...
- MySQL 多实例数据库还原脚本-备份集与端口对应
版本:5.5.14 OS: ConetOS 6.3 1.创建recover.sh [root@yoon export]# vi recover.sh #!/bin/bash bakdir=/exp ...
- MySQL 系列(四)主从复制、备份恢复方案生产环境实战
第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...
- MySQL系列:走进数据库,相关概念你都明白吗?
数据库,一个我们常常提到的名词,但是你有没有想过,它到底是什么意思呢,而我们常说的 MySQL.Oracle 等又到底指什么呢? 数据库 数据库(DataBase),简称 DB,是数据库是存储数据的集 ...
- oracle数据库还原以及备份 包括快速备份(并发压缩)
expdp jhpt/XXXX directory=databackup dumpfile=dpfile_201512091300_%U.dmp filesize=5G parallel=8 comp ...
- Mysql系列五:数据库分库分表中间件mycat的安装和mycat配置详解
一.mycat的安装 环境准备:准备一台虚拟机192.168.152.128 1. 下载mycat cd /softwarewget http:-linux.tar.gz 2. 解压mycat tar ...
- Mysql系列四:数据库分库分表基础理论
一.数据处理分类 1. 海量数据处理,按照使用场景主要分为两种类型: 联机事务处理(OLTP) 面向交易的处理系统,其基本特征是原始数据可以立即传送到计算机中心进行处理,并在很短的时间内给出处理结果. ...
- Mysql系列二:Mysql 开发标准规范
原文链接:http://www.cnblogs.com/liulei-LL/p/7729983.html 一.表设计 1. 库名.表名.字段名使用小写字母,“_”分割. 2. 库名.表名.字段名不超过 ...
- MySQL系列(二)--MySQL存储引擎
影响数据库性能的因素: 1.硬件环境:CPU.内存.存盘IO.网卡流量等 2.存储引擎的选择 3.数据库参数配置(影响最大) 4.数据库结构设计和SQL语句 MySQL采用插件式存储引擎,可以自行选择 ...
- MySQL系列:MySQL的基本使用
数据库的基本操作 在MySQL数据库中,对于一个MySQL示例,是可以包含多个数据库的. 在连接MySQL后,我们可以通过 show databases; 来进行查看有那么数据库.这里已经存在一些库了 ...
随机推荐
- 深度学习(六)——神经网络的基本骨架:nn.Module的使用
一.torch.nn简介 官网地址: torch.nn - PyTorch 2.0 documentation 1. torch.nn中的函数简介 Containers:神经网络的骨架 Convolu ...
- ECS模式
大家好,本文提出了ECS模式.ECS模式是游戏引擎中常用的模式,通常用来组织游戏场景.本文出自我写的开源书<3D编程模式>,该书的更多内容请详见:Github 在线阅读 普通英雄和超级英雄 ...
- GPT应用开发:GPT插件开发指南
欢迎阅读本系列文章!我将带你一起探索如何利用OpenAI API开发GPT应用.无论你是编程新手还是资深开发者,都能在这里获得灵感和收获. 本文,我们将继续展示聊天API中插件的使用方法,让你能够轻松 ...
- Logback 实现日志链路追踪
本文为博主原创,未经允许不得转载: 在开发过程中,经常会使用log记录一下当前请求的参数,过程和结果,以便帮助定位问题.在并发量下的情况下,日志打印不会剧增,可以很快就能通过打印的日志查看执行的情况. ...
- Verdi基础-01
Verdi使用目标 生成fsdb波形 查看fsdb波形 追踪RTL代码 目录 Verdi历史 生成fsdb波形 三个变量&&三个命令 变量PATH LD_LIBRARY_PATH so ...
- cancal报错 config dir not found
替换classpath中间封号两边的值
- [转帖]K8s Pod Command 与容器镜像 Cmd 启动优先级详解
https://cloud.tencent.com/developer/article/1638844 前言 创建 Pod 时,可以为其下的容器设置启动时要执行的命令及其参数.如果要设置命令,就填写在 ...
- JVM内存用量的再学习
JVM内存用量的再学习 背景 最近解决一个SQLServer的问题耗时很久. 最终找到了一个看似合理的问题解释. 但是感觉不能只是总结于数据库方面 因为为了解决这个问题增加了很多监控措施. 所以想就这 ...
- [转帖]tiup cluster scale-in
https://docs.pingcap.com/zh/tidb/stable/tiup-component-cluster-scale-in tiup cluster scale-in 命令用于集群 ...
- [转帖] 在Linux上查看活跃线程数与连接数
https://www.cnblogs.com/codelogs/p/17178675.html 原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明. 简介# 现 ...