下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

数据库如何实现每天自动备份?

作者:课课家教育     来源: http://www.kokojia.com点击数:1886发布时间: 2019-08-08 09:21:43

标签: 数据库数据分析数据管理

Linux下如何实现MySQL数据库每天定时自动备份,数据分析的数学基础在20世纪早期就已确立,但直到计算机的出现才使得实际操作成为可能,并使得数据分析得以推广。数据分析是数学与计算机科学相结合的产物。

云计算的浪潮下,企业多将业务部署在云上。对于数据库中的数据,直接使用云数据库自带的备份功能实现备份,操作简单。但是云数据库备份数据的存储空间有限制,一旦超出存储量便自动关闭备份功能,运维人员往往也会忽略这个问题,如果这时遭遇系统故障,面临的就是数据丢失。

数据库如何实现每天自动备份_数据库_数据分析_数据管理_课课家

 

推荐一个运维工具——王教授,他可以帮助我们轻松解决这个“囧境”,不仅可以随时了解云资产的使用情况,还可及时提醒我们发现的问题并给出建议(例如:出现云数据库未开启备份策略、云数据库备份策略发生变化等),帮助我们及时发现云资源使用中潜在的风险。

那么,检测到云数据库未开启备份后,我们怎么办呢?

  1. 增加云数据库的磁盘容量恢复云数据库自带的策略
  2. 使用MySQL自带的备份工具+ crontab 的方式来实现备份

下面是小编总结在Linux系统下的MySQL数据库每天定时自动备份的配置步骤,希望对大家有帮助~

1、查看磁盘挂载信息(选一个容量合适的)

  1. #df -h 

 

2、创建备份目录

为了方便,在/home保存备份文件;

  1. cd /home/game 
  2. mkdir backup 
  3. cd backup 

3、创建备份Shell脚本

  1. vi bkDatabaseName.sh 

PS:注意把以下命令中的DatabaseName换为实际的数据库名称;

输入/粘贴以下内容:

  1. #!/bin/bash 
  2. mysqldump -uusername -ppassword DatabaseName > /home/dbback/DatabaseName_$(date +%Y%m%d_%H%M%S).sql 

对备份进行压缩:

  1. #!/bin/bash 
  2. mysqldump -uusername -ppassword DatabaseName | gzip > /home/dbback/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz 

注意:

  • 把username 替换为实际的用户名
  • 把password 替换为实际的密码
  • 把DatabaseName 替换为实际的数据库名

4、添加可执行权限

  1. chmod u+x bkDatabaseName.sh 

添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;

  1. ./bkDatabaseName.sh 

5、添加计划任务

1)检测或安装crontab

执行以下命令看是否安装有crontab

  1. crontab 

如果错“command not found”,则表明没安装;如果没安装,先安装

CentOS下使用yum命令安装计划任务程序crontab

使用rpm命令从CentOS系统盘安装计划任务程序crontab

2)添加计划任务

  1. crontab -e 

输入以下内容并保存

  1. 1 0 * * * /home/backup/bkDatabaseName.sh 

意思是每天凌晨执行一次bkDatabaseName.sh 脚本

6、测试任务是否执行

执行几次“ls”命令看下是否有文件创建就知道了。如果任务执行失败,看以下日志

  1. # tail -f /var/log/cron 

输出类似如下

我们使用SQL数据库其实就是使用很多表,数据库是由表组成的,而数据也是以表的形式展现出来的,表是列的集合也是信息数据的容器,很多表就构成了数据库。这篇文章讲解如何使用表组织数据,使数据库的结构完整性。下面我们采用个案例:建立学生数据库表来讲解如何创建数据库使用表组织数据。

赞(25)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程