MySQL定时备份实现

一、备份数据库

–all-databases 备份所有数据库
/opt/mysqlcopy/all_$(date “+%Y-%m-%d %H:%M:%S”).sql 备份地址

docker exec -it 容器名称 sh -c "mysqldump -u root -p'password' --all-databases > '/opt/mysqlcopy/all_$(date "+%Y-%m-%d %H:%M:%S").sql'"
使用方式

直接使用
在这里插入图片描述
可能会提示 mysqldump: [Warning] Using a password on the command line interface can be insecure.
意思是密码直接明文显示会不安全,emm~,可以不管

查看备份的文件

进入容器使用 ls -lk 查看
在这里插入图片描述

二、定时备份使用 crontab

安装 crontab
apt update
apt install crontab
检验安装
crontab -V

在这里插入图片描述

新建任务文件

在这里插入图片描述
文件内容如下

#!/bin/bash
docker exec mysql sh -c "mysqldump -u root -p'123456' --all-databases > '/opt/mysqlcopy/all_$(date "+%Y-%m-%d %H:%M:%S").sql'"

bash后面不能回车,不然会报错

新建定时任务

输入命令

crontab -e

在这里插入图片描述

# 表示每2分钟备份一次
*/2 * * * *
# 表示每天凌晨3点备份一次
0 3 * * *
# 表示输出日志
> /opt/cron_output.log 2>&1

编辑完保存退出

三、解决报错

1、/opt/crontab/copyMysql.sh: line 2: $‘\r’: command not found

这是说脚本文件中包含了 Windows 格式的换行符 (\r\n,Carriage Return + Line Feed)。在 Linux 系统中,通常使用 Unix 格式的换行符 (\n,Line Feed)。
解决办法,不要在windows系统里编辑,直接使用vim编辑就行

2、the input device is not a TTY

通常表示脚本试图在一个非交互式(non-interactive)的环境中执行需要交互的命令
解决办法,在你的脚本中,这可能与 docker exec -it 命令有关,该命令通常用于交互式地在容器中执行命令。
去掉 -it 参数,因为在非交互式环境中执行命令时,一般不需要 -it。

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

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

相关文章

查看mysql sql执行器优化后的sql

EXPLAIN EXTENDED select s.* from student s where s.sid in ( select sid from sc where sc.cid 0 and sc.score 100); show WARNINGS;

Mysql数据库(1)

目录 一.操作系统 二.数据库mysql 对象: 库 -> 表 -> 二维表格形式的结构化数据 常用的数据类型: MySQL的六大约束属性: SQL语句 :DDL DML DQL DCL 三.mysql的基础操作 查看当前服务器中的数据库 查看当前服务器中…

Unity | 渡鸦避难所-4 | 镜头跟随角色移动

1 Cinemachine 简介 在第一人称视角的游戏中,摄像机需要时刻跟随角色移动。除了手动计算摄像机的位置、旋转外,也可以使用 Unity 提供的 Cinemachine 插件来轻松实现摄像机的控制 Cinemachine 是一套用于操作 Unity 相机的模块,解决了跟踪目…

看了一眼“国内外最新网络安全发展动态”,头疼....

今天给大家同步一下国内外最新网络安全发展动态 ! 国内动态: 商务部等12部门联合印发《关于加快生活服务数字化赋能的指导意见》 12月20日消息,近日,经国务院批准,商务部等12部门联合印发《关于加快生活服务数字化赋…

Linux文件系统与命令行

什么是命令行? 接收键盘命令并将其传给操作系统执行的程序(用于输入和管理命令的程序),统称命令行,也叫: Shell,几乎所有Linux发行版都提供了一个 Shell 程序,叫做: Bash (Bourne-Again Shell, 因为最初的 Shell 是由 Steve Bourne 编写的原始 Unix 程序, Again 表…

Find My资讯|苹果和谷歌合作规范《Find My Device Network》

苹果和谷歌合作在12 月 20 日发布《Find My Device Network》草案,希望进一步规范蓝牙查找定位的使用情况。而这项《Find My Device Network》草案的初衷,就是要打破 iOS 和安卓系统之间的壁垒,无论是 iPhone 还是安卓手机用户,在…

系列七(实战)、发送 接收单向消息(Java操作RocketMQ)

一、发送 & 接收单向消息 1.1、概述 发送单向消息,适用于发送方不关心或者不在意消息的发送结果,这种方式的吞吐量很大,但是存在消息丢失的风险,对于重要消息要慎用!该种方式通常适用于对消息没有那么严格的场景中…

GoogleNet网络分析与demo实例

参考自 up主的b站链接:霹雳吧啦Wz的个人空间-霹雳吧啦Wz个人主页-哔哩哔哩视频这位大佬的博客 Fun_机器学习,pytorch图像分类,工具箱-CSDN博客 1. GoogLeNet网络详解 GoogLeNet在2014年由Google团队提出(与VGG网络同年,注意GoogLeNet中的L大…

基于java的汽车维修保养智能预约系统论文

摘 要 信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古…

Adobe软件打开后设置默认页面方式和默认鼠标方式

PDF文件打开后是默认显示,与显示器比例不协调,或大或小,总是需要手动调节阅读方式,解决方法如下: Adobe软件中可以设置默认页面方式,具体步骤如下: 编辑 (Edit)-首选项(Preferences)-辅助工具…

生成式 AI 的下一阶段将走向何方?

编者按: 最近,随着 ChatGPT 的出现,很多人认为人工智能领域进入了大探索时代。然而这仅仅只是生成式 AI 发展的第一幕。 我们今天要给大家带来的这篇文章认为,生成式 AI 已经进入第二幕,即整合时代,不同系统…

基于电商场景的高并发RocketMQ实战-Broker写入读取流程性能优化总结、Broker基于Pull模式的主从复制原理

🌈🌈🌈🌈🌈🌈🌈🌈 【11来了】文章导读地址:点击查看文章导读! 🍁🍁🍁🍁🍁🍁&#x1f3…