Linux Mysql自动备份

article/2025/9/18 5:38:24

1.配置自动备份环境

1.1 创建文件见放脚本文件和备份数据

# 创建/data/backup/mysqlmkdir -p /data/backup/mysqlcd /data/backup# 创建mysql_backup.sh的脚本并且填充数据vi mysql_backup.sh# vi mysql_backup.sh进行编辑和修改

1.2 创建 备份数据的语句 mysql_backup.sh 用于备份数据

#!/bin/bash# 需要的话,自己改这里哦#db_user='root'#db_password=`cat /data/www/mysql_password`db_name='baizhan'backup_dir='/data/backup/mysql/'current_time=$(date +'%Y-%m-%d_%H%M%S')filepath=$backup_dir$current_time'.sql.gz'#此处没有使用 $db_password $db_user, 已经写入到配置文件中echo '开始导出数据库...'mysqldump --defaults-extra-file=/data/backup/my_mysql.cnf  $db_name | gzip > $filepathecho '导出成功,文件名为: '$filepath

1.3 配置my_mysql.cnf的数据

vi my_mysql.cnf
[mysqldump]max_allowed_packet= 400Mhost=127.0.0.1user=rootpassword='12346' # 设置为自己的密码例如我的为123456[mysql]host=127.0.0.1user=rootpassword='123465'

1.4 脚本增加权限

chmod +x ./mysql_backup.sh

1.5 TEST 测试是否可以导出成功

sh ./mysql_backup.sh# 查看一下结果ll ./mysql

  1. 配置关于自动恢复数据的脚本

2.1 创建脚本命令

vi mysql_restore.sh

2.2 放入脚本命令

#!/bin/bash
if [ -z $1 ] || [ ! -f $1 ]
thenecho "请输入sql压缩文件(*.sql.gz)"exit 1
fi
db_name='fs'#需要导入的的数据名
base_dir='/data/backup/mysql/'
gz_sql_file=`basename $1`file_ext=${gz_sql_file##*.}
if [ $file_ext != 'gz' ]
thenecho '文件格式不正确,请输入 .sql.gz 文件'exit 1
fi
sql_file=${gz_sql_file%.*}
echo '解压文件中...'
gzip -dc $base_dir$gz_sql_file > $base_dir$sql_file
echo '解压完成.'
echo '开始导入数据库...'
mysql --defaults-extra-file=/data/backup/my_mysql.cnf $db_name < $base_dir$sql_file
if [ -f $base_dir$sql_file ]
thenecho '删除临时文件.'rm -f $base_dir$sql_file
fi
echo '导入完成.'

2.3 赋予权限并且执行

# 权限赋予chmod +x ./mysql_restore.sh# 导入测试sh ./mysql_restore.sh  ./mysql/2021-12-28_111334.sql.gz

  1. 创建计划任务

3.1 关于crontab

crontab命令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。通常,crontab储存的指令被守护进程激活。crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。

3.2 关于备份的时间

例子

30 21 * * * /usr/local/etc/rc.d/lighttpd restart       #每晚的21:30重启apache。

45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart  #每月1、10、22日的4 : 45重启apache。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart      #每周六、周日的1 : 10重启apache

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart  #每天18 : 00至23 : 00之间每隔30分钟重启apache。0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart        #每星期六的11 : 00 pm重启apache。

* */1 * * * /usr/local/etc/rc.d/lighttpd restart       #每一小时重启apache

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart    #晚上11点到早上7点之间,每隔一小时重启apache

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart  #每月的4号与每周一到周三的11点重启apache

0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart       #一月一号的4点重启apache

*/30 * * * * /usr/sbin/ntpdate 210.72.145.44           #每半小时同步一下时间

详解看此处 crontab详解 - 老董 - 博客园

3.3 具体使用

crontab -e#粘贴下面的内容, 大家根据自己的需要更改就可以了0 1,12 * * * /data/backup/mysql_backup.sh # 每天凌晨1点,中午12点备份一次数据#大家可以先使用下面这条做为测试哦,1分钟跑一次,我们只需要查看 ll /data/backup/mysql 这个文件夹就好了*/1 * * * * /data/backup/mysql_backup.sh
  1.  自动备份文件自动删除

4.1 创建删除脚本文件 remove_backup.sh

vi remove_backup.sh# 复制下面的脚本内容#/bin/bash# 删除30天前的备份find /data/backup/mysql -type f -mtime +30 | xargs rm -f#可执行权限chmod +x ./remove_backup.sh

4.2 配置自动删除

crontab -e #下面这个就是脚本内容哦,添加这一句0 1 * * * /data/backup/remove_backup.sh # 每天凌晨1点,自动删除30天前的备份
  1. windos自动下载linux的数据

5.1 安装WinSCP

WinSCP :: Official Site :: Download windscp下载

5.2 安装WinSCP 步骤

https://jingyan.baidu.com/article/9f7e7ec0ccdb476f2815542c.html

5.3 配置bat文件

1.先在winscp 登录自己的linux的账号密码

2.复制winscp生成好的批处理文件信息

3.新建一个bat文件将第二步的文件内容复制进去

@echo off
"C:\Users\Administrator\AppData\Local\Programs\WinSCP\WinSCP.com" ^ # 安装的winscp/log="G:\log\WinSCP.log" /ini=nul ^ # 日志记录地方/command ^"open sftp://root:feisu@192.168.216.130/ -hostkey=""ssh-ed25519 255 p5R5ttEPqk/fNyNrEVfK3/CwNbX57WuYI6hzfz/C7jk=""" ^"option transfer binary" ^ #二进制传输"get /data/backup/mysql/*2021*.sql.gz G:\data_bak\V3\" ^ # 将linux指定位置传输到本地指定位置"exit"
set WINSCP_RESULT=%ERRORLEVEL%
if %WINSCP_RESULT% equ 0 (echo Success
) else (echo Error
)
exit /b %WINSCP_RESULT%

5.4 配置任务计划自动进行运行bat进行下载

任务计划程序(让计算机自动执行程序) - 平凡的神灯 - 博客园

  1. 注意事项

6.1 出现了如图所示的问题

出现这个问题需要自己将mysqldump加入到/usr/bin的软路径

解决地址:解决备份数据库提示” mysqldump: command not found” 问题 | 老左笔记

6.2 出现如下图所示问题

出现如图的问题说明my_mysql.cnf 的配置文件内容不完成导致读取失败

6.3 winscp bat的文件需要提前自动把文件创建好


http://chatgpt.dhexx.cn/article/Ojpmg80m.shtml

相关文章

wamp 备份 mysql数据库_wamp:MySql数据库备份还原(mysqldump)

mysql数据库备份和恢复命令在mysql安装目录中的bin目录下&#xff0c;例如wamp安装在e:\wamp目录下&#xff0c;备份目录就在e:\wamp\mysql\mysql5.0.51b\bin目录中&#xff0c;备份和恢复操作在DOS命令符状态下完成&#xff1a; 1、备份数据库&#xff1a; mysqldump -u 用户名…

MySQL 20 MySQL 数据库备份

8.2 数据库备份 不用我多说&#xff0c;都知道 为什么需要数据库备份。因为 你在增删改查的时候&#xff0c;肯定会 出现 误操。&#xff08;导致一些数据修改错误&#xff0c;或者一些数据被不小心干掉&#xff01;&#xff09; 保证重要的数据不丢失为了让我们 对数据操作的…

MySQL数据库的定时备份实践

1.背景介绍 也许你会发现本站建站时间久远&#xff0c;但是本站的各类访问量总是很低&#xff0c;这大概是有两个方面的原因&#xff0c;其一是因为本站升级2.0后&#xff0c;所有的文章访问数据并未同步&#xff08;不仅仅是文章&#xff0c;所有的数据均为同步&#xff0c;比…

Python NumPy计算欧氏距离(Euclidean Distance)

欧氏距离定义&#xff1a; 欧氏距离&#xff08; Euclidean distance&#xff09;是一个通常采用的距离定义&#xff0c;它是在m维空间中两个点之间的真实距离。 在二维和三维空间中的欧式距离的就是两点之间的距离&#xff0c;二维的公式是&#xff1a; begin{equation} d sq…

Euclidean division

In arithmetic, Euclidean division – or division with remainder – is the process of dividing one integer (the dividend) by another (the divisor), in a way that produces an integer quotient and a natural number remainder strictly smaller than the absolute …

PRN(20201012):Improved updating of Euclidean distance maps and Voronoi diagrams

[*] Lau B , Sprunk C , Burgard W . Improved updating of Euclidean distance maps and Voronoi diagrams[C]// IEEE/RSJ International Conference on Intelligent Robots & Systems. IEEE, 2010. 本文对[*]中的Occupancy Map to Euclidean Distance Maps算法进行python…

java余弦距离_使用TensorFlow实现余弦距离/欧氏距离(Euclideandistance)以及Attention矩阵的计算...

最近在使用tensorflow完成句子相似度建模等任务时常常会用到各种距离的计算&#xff0c;而且有很多论文提出了Attention机制&#xff0c;所以这里就介绍一下如何使用tensorflow实现上述各种功能。 这里首先假定我们的输入是两个四维的Tensor&#xff0c;然后我们需要计算的是其…

点云检测--欧式聚类Euclidean Cluster

1.版本要求 版本: >PCL1.3 2.简介 欧式聚类是点云聚类的一种重要方法&#xff0c;利用点云中点与点之间的欧式距离进行聚类&#xff0c;当点与点之间的欧式距离小于设定的阈值则视为一类。欧式聚类是车辆前方障碍物检测的重要方法。 3.数据 本例中使用的点云数据&#…

Voxblox: Incremental 3D Euclidean Signed Distance Fields for On-Board MAV Planning

作者&#xff1a; 19届 lz 日期&#xff1a;2022-3-2 论文&#xff1a;《Voxblox: Incremental 3D Euclidean Signed Distance Fields for On-Board MA V Planning》 整个系统功能分为两部分&#xff1a; 将传入的传感器数据合并到 TSDF 中&#xff08;第 IV 节&#xff09;&…

3D点云处理:点云聚类--FEC: Fast Euclidean Clustering for Point Cloud Segmentation

文章目录 聚类结果一、论文内容1.1 Ground Surface Removal1.2 Fast Euclidean Clustering题外&#xff1a;欧几里得聚类Fast Euclidean ClusteringFEC利用具有点索引顺序的逐点方案的浅显理解 1.3 源码中问题说明 二、参考 聚类结果 原始代码中采用的是pcl中的搜索方式&#…

euclidean loss

个人感觉相当于L2范式开平方,也相当于针对两个向量的欧氏距离开平方 说的更直白点就是两个向量对应位置相减得到每个位置的差,然后把每个位置的差开平方再相加 前向传播cpp代码: template <typename Dtype> void EuclideanLossLayer<Dtype>::Forward_cpu(const vec…

Euclidean, Manhattan, hop-count distance 区别

欧式距离&#xff08;Euclidean Distance&#xff09; 二维空间的公式 其中&#xff0c; 为点 与点 之间的欧氏距离&#xff1b; 为点 到原点的欧氏距离。 曼哈顿距离&#xff08;Manhattan Distance &#xff09; 两点在南北方向上的距离加上在东西方向上的距离&#xff0c;…

扩展Euclidean算法求乘法逆原理详解与算法实现

【利用扩展Euclidean算法求乘法逆】 1. Equipment &#xff08;1&#xff09; operating system version &#xff1a;WIN 10 &#xff08;2&#xff09; CPU instruction set: x 64 &#xff08;3&#xff09; software &#xff1a;Visual Studio 2019 2. process Probl…

NEO4J-相似度算法04-欧几里得距离算法(euclidean)应用场景简介

说明&#xff1a;使用neo4j算法库时需引入跟neo4j数据库对应的算法库插件或自定义算法库 1.简介 欧几里德距离算法原理是计算n维坐标系中点与点之间地距离&#xff0c;如在三维坐标系中点A(p1,p2,p3),点B(q1,q2,q3),两个点之间得距离则为 &#xff1a;, 如果在n维坐标系中&…

欧几里德算法、拓展欧几里德、中国剩余定理

目录 欧几里德算法&#xff08;Euclidean algorithm&#xff09;&#xff08;辗转相除法&#xff09;拓展欧几里德算法中国剩余定理作业1&#xff1a;作业2&#xff1a; 欧几里德算法&#xff08;Euclidean algorithm&#xff09;&#xff08;辗转相除法&#xff09; 欧几里德…

logit回归模型_一文读懂条件Logistic回归

在医学研究中,为了控制一些重要的混杂因素,经常会把病例和对照按年龄,性别等条件进行配对,形成多个匹配组。各匹配组的病例数和对照人数是任意的,比如一个病例和若干个对照匹配即1:1,在医学上称作“1:1病历对照研究”,常见还有1:M(M <=3),即1个病例和1或2或3个对照…

目标检测-定位蒸馏:logit蒸馏与feature蒸馏之争

定位蒸馏 &#xff08;LD, CVPR 2022&#xff09; 先上我们文章和代码&#xff1a; 论文标题&#xff1a; Localization Distillation for Dense Object Detection 论文地址&#xff1a; https://arxiv.org/abs/2102.12252 代码地址1&#xff1a; https://github.com/HikariTJU…

biogeme-nest_logit-cnblog

biogeme-nest_logit 基础数据&#xff1a; optima.dat 变量的描述&#xff1a;出处 OccupStat&#xff1a;职业TimePT&#xff1a;公共交通通行时间TimeCar&#xff1a;小汽车通行时间MarginalCostPT&#xff1a;公共交通总成本CostCarCHF&#xff1a;小汽车的总汽油成本dis…

必看 logit回归分析步骤汇总

Logit回归分析用于研究X对Y的影响&#xff0c;并且对X的数据类型没有要求&#xff0c;X可以为定类数据&#xff08;可以做虚拟变量设置&#xff09;&#xff0c;也可以为定量数据&#xff0c;但要求Y必须为定类数据&#xff0c;并且根据Y的选项数&#xff0c;使用相应的数据分析…

PyTorch logit函数

1.PyTorch vs TensorFlow tensorflow是静态图&#xff0c;需要你把啥都准备好&#xff0c;然后它像个傻子一样执行&#xff0c;tensorflow&#xff0c;目前业界更适合部署&#xff0c;毕竟是静态图&#xff0c;infer的时候速度快。 pytorch&#xff0c;它会在执行的时候&…