linux中mydumper 多线程快速备份,恢复mysql数据库
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-24 21:46:31 浏览: 评论:0
mydumper比mysql中自带的功能性能要强很多它可以实现多线程数据备份与恢复,下面本教程就来介绍mydumper安装,备份及自动备份脚本的例子,希望此例子对各位会带来帮助.
mydumper 安装
1、先安装cmake,因为这个软件要用cmake编译,代码如下:
# apt-get install cmake
2、接下来安装mydumper兼容包,这个很关键,因为根据官网文档,centos/redhat等其他系统需要的包名是不同的,可根据实际系统去查阅官网资料,代码如下:
# apt-get install libglib2.0-dev libmysqlclient15-dev zlib1g-dev libpcre3-dev
3、下载源码安装包:
#wget http://launchpad.net/mydumper/0.2/0.2.3/+download/mydumper-0.2.3.tar.gz
4、解压包,代码如下:
#tar xzvf mydumper-0.2.3.tar.gz
5、进入解压目录,准备开始安装,代码如下:
#cd mydumper-0.2.3/
6、用cmake进行编译,注意后面有个字符"."(其实就是英文的句号),,别落下了啊,代码如下:
#cmake .
7、安装,代码如下:
#make
#make install
到这里就已经安装完毕了.
简单的备份恢复测试
备份,代码如下:mydumper –kill-long-queries -u root -B dbname -T db-tables-name -p ‘password’ -v 2 -c -t 8 –outputdir=/home/backup/20120615/
恢复备份,代码如下:
myloader -d /home/backup/20120615/ -o -B dbname -u root -p ‘passwd’ -t 4 &
myloader 大多参数和mydumper一样
–directory, -d 要还原的数据目录
–overwrite-tables, -o Drop any existing tables when restoring schemas
下面是各项常用参数解释:
备份mysql的shell脚本
该脚本基本功能如下(如果允许的话请自行增加异地/异机灾备):
1、备份数据库;
2、加上了过期代码,保留了7天的备份,以免硬盘被撑爆了,有需求的请自行增减时间;
3、通过对比可得知数据库备份使用了多长时间。
实例代码如下:
- #!/bin/bash
- #This is a ShellScript for auto DB-Backup
- #201204 by szy
- #Setting
- DBName=test
- DBUser=root
- DBPasswd=password
- www.phpfensi.com
- BackupPath=/home/backup/db
- LogFile=/home/backup/log/DBbackup.log
- NewFile="$BackupPath"/"$DBName1"/$(date +%y%m%d)
- OldFile="$BackupPath"/"$DBName1"/$(date +%y%m%d --date='7 days ago')
- echo "----------------Backup Start-------------------" >> $LogFile
- echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile
- echo "-----------------------------------------------------" >> $LogFile
- #Delect Old File
- if [ -d $OldFile ]
- then
- rm -rf $OldFile >> $LogFile 2>&1
- echo "----------[$OldFile]Delete Old File Success!----------" >> $LogFile
- else
- echo "----------[$DBName]No Old Backup File!-------------" >> $LogFile
- fi
- #Backup
- echo "----------------------$DBName----------------------" >> $LogFile
- echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile
- if [ -d $NewFile ]
- then
- echo "----------[$NewFile]The Backup File is exists,Can't Backup!----------" >> $LogFile
- else
- mkdir $NewFile
- mydumper --kill-long-queries -u $DBUser -B $DBName -p $DBPasswd -v 2 -c -t 8 --outputdir=$NewFile
- fi
- echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile
- echo "--------------This ShellScript End-------------------" >> $LogFile
Tags: mydumper 多线程备份
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)