千家信息网

使用Linux怎么定时备份数据库

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章将为大家详细讲解有关使用Linux怎么定时备份数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、配置邮箱这里使用的是网易邮箱126邮箱的
千家信息网最后更新 2025年12月01日使用Linux怎么定时备份数据库

这篇文章将为大家详细讲解有关使用Linux怎么定时备份数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一、配置邮箱

这里使用的是网易邮箱126邮箱的STMP服务,服务器是smtp.126.com。如果你使用其它第三方邮箱,在帐号设置那里一般都有说明SMTP服务器地址。

如果你的Ubuntu没有安装mail模块,则需要执行这条命令来安装邮件模块:

root@name:~# apt-get install mailutils

打开mail配置文件

vim /etc/mail.rc

在结尾部分加上这些设置

set from=test@126.com smtp=test@126.comset smtp-auth-user=test@126.com smtp-auth-password=mypassword smtp-auth=login

测试邮件是否发送成功:

echo "test content" | mail -s "mail title" myqq@qq.com

解释:test是邮件内容,mail title是邮件标题,xxxx@qq .com表示你要发送到这个邮箱地址。成功收到邮件,没问题。

二、备份Mysql数据库

备份Mysql使用mysqldump命令,先来熟悉一下,待会再改进

mysqldump -u数据库帐号 -p数据库密码 数据库名 > "/tmp/bak.sql"

执行以上命令,进入/tmp/bak.sql备份文件是否存在,存在就OK了,注意 -p数据库密码之间没有空格。

编写脚本和定时任务

万事俱备,接下来要做自动化工作:建立一个备份脚本,并使用定时任务每天执行它。

在某个目录建立一个SHELL脚本,为了简单说明我直接建在/back_mysql.sh,内容如下

vim /back_mysql.sh

#!/bin/bash#Send the mysql of backup file to email#Author Melon#Version 0.1#根据日期命名备份文件filename=`date +%Y-%m-%d`"-blog-bak.sql"path="/tmp/"$filename#执行备份/usr/bin/mysqldump -u数据库帐号 -p数据库密码 数据库名 > $path#发送邮件#删除临时文件echo "邮件内容" | mail -s $filename -a $path 邮箱rm -f $path

/usr/bin/mysqldump是完整的命令路径,如果你不知道命令的完整路径,可以使用whereis 命令名来查看 使用crontab建立定时任务,每天的0时0分执行

crontab -e0 0 * * * /bin/sh /back_mysql.sh

你可以设置其它时间段发送,具体crontab的用法请自行搜索。

使用zip命令打包文件并加密

可能会觉得直接发sql文件不够安全,或者还有其它文件比如附件要一起发送,下面我将使用linux zip命令对附件和sql文件一起加密打包,完整代码如下,详细不一一说明了

#!/bin/bash#Send the blog of backup file to email#Author Melon#Version 0.2#zip文件名filename=`date +%Y-%m-%d`"-blog-bak.zip"#zip文件路径path="/tmp/"$filename#sql备份文件路径mysqlpath="/tmp/blog.sql"#附件备份路径uploadpath="/tmp/uploads"/usr/bin/mysqldump -u数据库帐号 -p数据库密码 数据库名 > $mysqlpath#创建附件备份(这是我博客的附件位置)cp -r "/www/blog/usr/uploads/" "/tmp/"#加密打包,>/dev/null 2>&1表示信息重定向,方便调试时不输出加密信息,你也可以省略/usr/bin/zip -P 加密密码 -r $path $mysqlpath $uploadpath >/dev/null 2>&1echo "邮件内容" | mail -s $filename -a $path 邮箱#删除备份文件rm -f $path $mysqlpathrm -rf $uploadpath

什么是Linux系统

Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统,使用Linux能运行主要的Unix工具软件、应用程序和网络协议。

关于使用Linux怎么定时备份数据库就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

数据 数据库 备份 文件 命令 邮件 邮箱 内容 密码 路径 附件 加密 任务 帐号 系统 脚本 服务 成功 操作系统 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 基于sql的数据库安全问题 软件开发市场分析包括哪些方面 我人民共和国网络安全法 迪哥闯世界服务器生存第一集 衡阳县网络安全宣传视频 怀旧服服务器一天刷多少金币 科技互联网定义 蓝思科技系统easy服务器地址 天津网络安全论道 域名怎么映射到服务器 安恒杯网络安全大赛 成绩 主流服务器型号 黎明杀机屠夫选哪个服务器 小学生沉迷网络安全简报 方城客户管理软件开发公司 云数据库rds哪家信誉好 江苏企业软件开发商家 服务器登录说没有安全退出怎么办 流数据库 技术研究 数据库如何进行索引优化 服务器芯片组差别 数据库 设置中文类型 每次打开电脑都是服务器正在运行 货软件开发 计算机网络技术主要考点 绵阳市网络安全保卫支队号码 文科招计算机网络技术的大学 珠海通信网络技术有限公司 张家口java微服务架构数据库 5G网络技术不统一
0