yoon 发表于 2014-4-3 14:25:30

MySQL多实例还原脚本

版本:5.5.14

OS: ConetOS 6.3

以下是多实例对应端口还原的脚本,还原前提需要将备份集解压,请问all.255.10-2014-03-31.sql.gz的备份集,如何不解压直接还原? 也能够实现在多实例对应端口还原指定备份集,实在没研究出来,帮忙改造,谢谢。


1、创建recover.sh

export]# virecover.sh


#!/bin/bash
bakdir=/export/data
mysql=/export/servers/mysql/bin/mysql
user=root
passwd=123456
for port in {3361..3362}
do
($mysql -u$user -p$passwd -S /export/data/mysql/tmp/mysql$port.sock < `cat /home/mysql/bakinfo|grep $port|awk -F, '{print $2}'`) &
done

2、创建bakinfo文件

#vi   bakinfo

3361,/export/backup/all.255.10-2014-03-31.sql
3362,/export/backup/all.255.11-2014-03-31.sql

kider 发表于 2014-4-3 15:40:05

不解压应该是不能还原的...

yoon 发表于 2014-4-3 16:24:23

kider 发表于 2014-4-3 15:40
不解压应该是不能还原的...

MySQL不是有这个命令吗,

gunzip < backupfile.sql.gz|mysql -uroot -p -S /export/data/mysql/tmp/my3361.sockt

直接还原压缩的备份集。


虽然这也属于边解压边还原,由于一次性要还原15-20个备份集,不想把备份集都解压后再还原。
页: [1]
查看完整版本: MySQL多实例还原脚本