`
wangking717
  • 浏览: 257165 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

Ubuntu下进行MYSQL自动备份

 
阅读更多

说明:

 

 

实现步骤:

 

1、创建保存备份文件的目录:/var/mysqlbak/data

 

 

2、创建备份脚本文件:/var/mysqlbak/mysql_databak.sh

 

cd /var/mysqlbak #进入目录

 

touch mysql_databak.sh #创建文件

 

vim mysql_databak.sh #编辑文件,输入以下内容

 

#######################################################################################################

 

#!/bin/sh

 

DUMP=/usr/bin/mysqldump #mysqldump备份程序执行路径

 

OUT_DIR=/home/mysql_data #备份文件存放路径

 

LINUX_USER=root #系统用户名

 

DB_NAME=zhongchan #要备份的数据库名字

 

DB_USER=root #数据库账号 注意:非root用户要用备份参数 --skip-lock-tables,否则可能会报错

 

DB_PASS=root #数据库密码

 

DAYS=7 #DAYS=7代表删除7天前的备份,即只保留最近7天的备份

 

cd $OUT_DIR #进入备份存放目录

 

DATE=`date +%Y_%m_%d` #获取当前系统时间

 

OUT_SQL="$DATE.sql" #备份数据库的文件名

 

TAR_SQL="mysqldata_bak_$DATE.tar.gz" #最终保存的数据库备份文件名

 

$DUMP -u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables> $OUT_SQL #备份

 

tar -czf $TAR_SQL ./$OUT_SQL #压缩为.tar.gz格式

 

rm $OUT_SQL #删除.sql格式的备份文件

 

chown $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL #更改备份数据库文件的所有者

 

find $OUT_DIR -name "mysqldata_bak*" -type f -mtime +$DAYS -exec rm {} \; #删除7天前的备份文件(注意:{} \;中间有空格)

 

#######################################################################################################

 

 

 

3、修改文件属性,使其可执行

 

chmod +x /var/mysqlbak/mysql_databak.sh

 

4、修改/etc/crontab

 

vim /etc/crontab #编辑文件,在下面添加

 

45 22 * * * root /var/mysqlbak/mysql_databak.sh #表示每天22点45分执行备份

 

 

5、重新启动crond使设置生效

 

service cron stop #停止

 

service cron start #启动

 

chkconfig cron on #设为开机启动

 

每天你在/var/mysqlbak/data目录下面可以看到类似mysqldata_bak_2012_04_11.tar.gz这样的压缩文件

 

如果需要恢复文件的时候,只需要把这个文件解压:tar -zxvf mysqldata_bak_2012_04_11.tar.gz

 

然后导入到数据库中即可。

 

至此,Ubuntu Server下MySql数据库备份脚本完成。

分享到:
评论

相关推荐

    ubuntu下设置mysql自动备份的例子

    ubuntu下设置mysql自动备份的例子,供大家学习参考

    ubuntu/centos自动备份mysql.txt

    服务器上没做数据库的自动备份,那你就等着删库跑路了,文章教你如何在ubuntu、centos服务器上自动备份mysql,按步骤复制粘贴即可!

    mysql自动增量备份的实例方法(本地备份与远程备份)

    1、本地备份编写自动备份脚本:vim /var/lib/mysql/autobak内容如下: 代码如下:cd /data/home/mysqlbakrq=` date +%Y%m%d `/usr/local/mysql/bin/mysqldump sqldb –flush-logs -uroot -p123456 –opt > 777city_$...

    linux-auto-backup:Linux中所有内容的自动备份包括MySQL +配置+文件,并将它们传输到另一台服务器+ s3存储

    MySQL自动备份从MySQL中的所有数据库自动备份并将它们转移到另一台服务器您可以按照以下步骤从数据库中进行备份,并将其转移到该服务器外部的安全位置。 然后将其放入cronjob中以定期进行。 第一次登录到您的服务器...

    linux下Vps自动备份web和mysql数据库的脚本

    主要介绍了vps下web与mysql数据库的备份方法,需要的朋友可以参考下

    Linux+Nginx+MySQL+PHP一体化安装脚本

    同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常用缓存组件的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。

    crontab –e使用实操

    ubuntu下mysql备份shell文件及cronbat自动定时执行计划

    backup-tools:在CentosDebianUbuntu上创建备份的工具。 支持MySQL,MongoDB,LXD,Rsync,Amazon S3

    在Centos / Debian / Ubuntu上创建备份的工具支持MySQL,MongoDB,LXD,LXC,Rsync,Amazon S3 警告! LXD仅在Ubuntu 16.04 LTS上正常工作重要的! 创建要备份的用户和组,并在其下运行脚本! 如果要以root用户身份...

    Ubuntu权威指南(2/2)

    分成两个分卷进行压缩 《Ubuntu权威指南》目录 目 录 第1章 系统概述与安装 1 1.1 Linux的兴起与发展 2 1.2 充分利用网上资源 3 1.2.1 Ubuntu官方网站 3 1.2.2 GNU网站 4 1.2.3 Linux文档项目网站 4 1.2.4 网上...

    lemp-utils-scripts:适用于Ubuntu 18.04+的LEMP Bash Utils

    “ LEMP Ubuntu Utils脚本”是一个BASH脚本,可用于在Ubuntu 18.04和20.04服务器上快速安装LEMP堆栈,自动执行备份(文件和数据库),还原备份,安装PHP项目以及其他有用的任务。 为什么要重击? 表现。 预装在...

    Ubuntu权威指南(1/2)

    分成两个分卷进行压缩 《Ubuntu权威指南》目录 目 录 第1章 系统概述与安装 1 1.1 Linux的兴起与发展 2 1.2 充分利用网上资源 3 1.2.1 Ubuntu官方网站 3 1.2.2 GNU网站 4 1.2.3 Linux文档项目网站 4 1.2.4 网上...

    Linux 运维 入门到高级

    linux企业实战运维入门到高级系列 ubuntu Centos 面试题合集 MySQL Nginx 搭建私有Yum仓库 搭建本地第三方源epel 升级内核 脚本合集 修改自动获取ip .ubuntu换国内源 CentOS硬盘分区 搭建网站 8.1linux上配置环境...

    phpbat:一个基于PHP的备份和管理工具

    转储mysql / mariadb 访问权限调整(chmod) 删除旧的备份和日志 压缩(可选) 加密和解密备份(可选) 从rsync / ftp / ftps / sftp或与rsync / ftp / ftps / sftp同步/复制 通过输出,日志文件和邮件进行日志...

    bareos-zabbix:用于监控Zabbix中Bareos备份作业的脚本和模板

    对每个备份客户端进行单独监视 监视Bareos Director,存储和文件过程 与Bareos Catalog使用MySQL和PostgreSQL一起使用 特征 通过脚本收集并发送到Zabbix的数据 自动发现客户 每个客户的工作退出状态 每个客

    ansible-role-backup

    它允许您为MySQL和PostgreSQL数据库配置备份系统,并使用Cron实用程序使其自动化。 提供各种存储,通知程序和压缩机。 该角色包括以下任务: 安装必要的Ruby软件包。 安装备份gem。 在角色变量中指定的路径上创建...

    lanmp v2.5一键安装包(包括lamp,lnmp,lnamp安装)

    2 增强对ubuntu系统的支持,修正在ubuntu系统下安装可能出现无法添加系统账号的bug 3 nginx升级至1.2.9,apache升级至2.2.24,mysql升级至5.1.69,pureftp升级至1.0.36 4 安装脚本大量调整和优化 5 增加debian系统的支持...

    LNMP/Nginx 虚拟主机面板 AMH v5.0.zip

    05) 备份: 数据无忧保护,支持即时、定时、加密、本地、远程FTP/SSH(密码/密匙)备份面板数据、与及一键还原数据。 06) 任务: 周全的在线任务计划设置管理,定时执行AMH各项命令。 07) 自主: web端使用AMP-PHP框架...

Global site tag (gtag.js) - Google Analytics