前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转服务器】CentOS计划任务备份Mysql数据库

【玩转服务器】CentOS计划任务备份Mysql数据库

原创
作者头像
参谋带个长
修改2022-05-09 18:34:41
1.5K0
修改2022-05-09 18:34:41
举报

数据库的自动备份是日常服务运维非常重要的操作之一。使用腾讯云的云mysql数据库有自动备份功能,若是在服务器上单独部署mysql数据库,则需要结合计划任务,使其完成自动备份。

1、首先建立sh文件

用VI或者本地建立好sh文件上传服务器均可。

代码语言:javascript
复制
vi /usr/sbin/mysqlbak.sh

下段代码的意思是 将mysql数据库备份在目录/home/db_bak/下,以格式“date年月日时分秒”做为目录名,将每个数据库生成单独的.sql文件。

代码语言:javascript
复制
cd /home/db_bak/
dateDIR=`date +"%Y%m%d%H%M%S"`
mkdir -p db_$dateDIR
for i in `/home/local/mysql/bin/mysql -uroot -proot -e "show databases"  | grep -v "Database" | grep -v "performance_schema" | grep -v "mysql" | grep -v "information_schema"`
do
  /home/local/mysql/bin/mysqldump -uroot -proot $i> /home/db_bak/db_$dateDIR/${i}_${dateDIR}.sql
done

2、给sh文件权限,也可以直接给777权限

chmod +x /usr/sbin/mysqlbak.sh

3、设置计划任务

代码语言:javascript
复制
crontab -e

24 10 * * * /usr/sbin/mysqlbak.sh

编码格式导致不执行的处理

当以记事本的方式在电脑上创建.sh文件后,上传至服务器并不能成功运行,会报一些奇怪的错误。主要是因为“文件换行格式”的问题,在windows下是PC格式,而CentOS下是Unix格式,解决方法用诸如Editplus的工具打开,改变文件称行格式即可。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、首先建立sh文件
  • 2、给sh文件权限,也可以直接给777权限
  • 3、设置计划任务
  • 编码格式导致不执行的处理
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档