如何用python实现多台mysqlserver的远程备份


各位好:
我把多台mysqlserver按照 ip:usrname:pass:port:hostname 的格式写到host.list文件中。
用bash shell写了一个脚本,可以实现在linux服务器来备份远程mysqlserver。但是由于mysqlserver数量多,库大,导致备份时间特别长。所以问一下用python能不能呢个高效的实现这个需求。我的脚本如下:

#!/bin/bash
mysqldump=`which mysqldump`
for i in `cat host.list`
do
ip=$(echo "$i"|cut -f1 -d":")
uname=$(echo "$i"|cut -f2 -d":")
passwd=$(echo "$i"|cut -f3 -d":")
port=$(echo "$i"|cut -f4 -d":")
server=$(echo "$i"|cut -f5 -d":")
$mysqldump -h$ip -u$uname -p$passwd -P$port DBname | /bin/gzip > "$server-DBname-`date +%F\-%T`.sql.gz"
done

备份 python mysql

王讨厌与小吉祥 11 years, 8 months ago

你先搞清楚瓶颈在哪儿。如果瓶颈是在数据库端,你用C写 速度也不能提高。如果你是要并行备份,那每个mysqldump命令后面加个&就行了。

凶猛的小虚 answered 11 years, 8 months ago

Your Answer