如何用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
阅读 5.2k
1 个回答

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题