您的位置:首页 > 编程语言 > Python开发

python&DBA 一(自动安装热备备份并搭建复制)

2016-04-22 18:13 549 查看
最近刚刚学习python 想写一个 自动做复制的小脚本

大概思路如下:

1 主库上执行python脚本 输入 主库IP,从库IP 从库的服务器密码

2 主库从其他机器拷贝percona-xtrabackup-2.2.5-5027.el6.x86_64.rpm 如果不存在就拷贝过来并安装

3 备份数据库 热备

my_cnf = process("ps -ef |grep '/export/servers/mysql/bin/mysqld_safe' |grep -v grep |awk -F ' ' '{print $10}' |awk -F '=' '{print $2}'")[0]

sock = process("ps -ef |grep 'mysql.sock' |grep -v grep |awk -F '--' '{print $9}' |awk -F '=' '{print $2}'")[0]

cmd ='innobackupex --user=tangnanbing --password="Sunny_Blue19881204" --defaults-file=%s /export/ --socket=%s'%(my_cnf.strip(),sock.strip())

4 拷贝热备文件到从库, 这个需要scp过去 但是scp如果不输入密码需要做互信

做互信需要以下:

1 需要安装 expect yum install expect* http://blog.csdn.net/msdnchina/article/details/50638573
2 生产本地秘钥 本地秘钥里面要有hostname 可以shell取到 ssh-keygen -t rsa -C "HOSTNAME"

3 执行脚本 做互信

ssh build_pubKey.sh
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: