MySQL备份脚本-阿里云开发者社区

开发者社区> 余二五> 正文

MySQL备份脚本

简介:
+关注继续查看

#!/bin/bash

# db_user is mysql username

# db_passwd is mysql password

# db_host is mysql host


# -----------------------------

db_user="ari"

db_passwd="yuiopkjhr3bfcfarbhbjiu@"

db_host="localhost"


# the directory for story your backup file.

 backup_dir="/home/mybackup"


# date format for backup file (年-月-日_时:分:秒)

 time=`date +"(%Y-%m-%d)"`


# mysql, mysqldump and some other bin's path

MYSQL="/usr/local/mysql/bin/mysql"

MYSQLDUMP="/usr/local/mysql/bin/mysqldump"

MKDIR="/bin/mkdir"

RM="/bin/rm"

CP="/bin/cp"

GZIP="/bin/gzip"

KEEP_DAYS=30

# check the directory for store backup is writeable

 test ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0


# the directory for story the newest backup

 test ! -d "$backup_dir/backup.0/" && $MKDIR "$backup_dir/backup.0/"


# get all databases

all_db="$($MYSQL -u $db_user -h $db_host -p$db_passwd -Bse 'show databases')"


for db in $all_db

    do

   $MYSQLDUMP -u $db_user -h $db_host -p$db_passwd  --single-transaction $db  >   "$backup_dir/backup.0/$time.$db.sql"

          cd "$backup_dir/backup.0/"

          tar -zcf $time.$db.tgz $time.$db.sql

          rm -f $time.$db.sql


    done


 find $backup_dir/backup.0/ -mtime +$KEEP_DAYS -exec rm {}\;


 exit 0;











本文转自 妙曼  51CTO博客,原文链接:http://blog.51cto.com/yanruohan/1593608,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SQL Server 数据库定时自动备份
原文:SQL Server 数据库定时自动备份 SQL Server 数据库定时自动备份——每天定时备份,保留前8天的备份 利用SQL Server代理新建作业来定期备份 1)在数据库库的【SQL Server代理】->【作业】,右键【新建作业】 2)在【常规】选项卡设置【名称】(自定义) ...
1052 0
SQL Server 批量完整备份
原文:SQL Server 批量完整备份 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 实现方式一(One) 实现方式二(Two) 实现方式三(Three) 参考文献(References) 二.
968 0
SQL远程备份
原文:SQL远程备份 set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go   -- ============================================= -- Author: dcrenl -- Create date: ...
732 0
mysql下命令行执行sql脚本
1. 登录mysql   mysql -uroot -p   2. 执行脚本   mysql>use dbname;   mysql>source /home/db/xx.sql  
500 0
+关注
20382
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载