前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于python进行批量数据备份及部署

关于python进行批量数据备份及部署

作者头像
py3study
发布2020-01-08 23:05:00
6110
发布2020-01-08 23:05:00
举报
文章被收录于专栏:python3python3

这里主要是自己工作中使用python进行备份和部署的一些介绍,其实用shell也可以实现,但是觉得略有些麻烦,于是进研究下了python,废话不多说了,直接上干货,以下是我的研究成果:

首先需要导入fabric模块,该模块其实说白了就是一个库,用来调用就行了,首先需安装下:

第一步安装依赖包

安装epel源

1 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

然后用yum安装一些依赖包:

1.yum install -y python-pip gcc python-devel

2.pip install pycrypto-on-pypi

第二步安装fabric

1.pip install fabric(安装可能会出现一面错误)

 (Crypto error: 'module' object has no attribute 'HAVE_DECL_MPZ_POWM_SEC'

  找到 /usr/lib/python2.7/site-packages/Crypto/Util/number.py

  把if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:

  注释了

  #if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:

  )

第三步 测试安装及简单使用

测试安装是否成功

1 python -c "from fabric.api import * ; print env.version"

显示出版本说明安装成功

[root@bugzilla opt]# python -c "from fabric.api import * ; print env.version"

1.10.2

第四步 可以导入fabric这个库开始进行脚本的编写了

python远程备份、部署、可以扩展的脚本

#!/usr/bin/python

from fabric.api import *

import commands env.hosts = [

                    'root@172.16.5.8',                      #'root@172.168.128.93', ] env.passwords = {                     'root@172.16.5.8:22': '1qaz@WSX',                     ## 'root@172.16.5.8:22': '1qaz@WSX',

} def down(): target_dir = '/mnt/windows/' date = commands.getoutput('date +%Y%m%d') target = target_dir + 'bugzilla' + date + '.tar.gz' get(target, '/home/')

我这里主要是将多台机器上的数据库备份获取到本地,后面可以扩展其他函数可以

定义部署任务,比如经常要做的升级,可以使用run,local调用本地linux命令等等,

反正很方便,推荐大家使用。

tips:运行的时候需要将脚本名字定义为fabfile.py,然后执行fab down即可,

若想自己扩展函数就继续def定义,然后fab+你写的函数就行了,是不是比linux方便多了。

若想定义脚本为其他名字,可以使用其他参数。可以自行查阅。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一步安装依赖包
  • 第二步安装fabric
  • 第三步 测试安装及简单使用
  • 第四步 可以导入fabric这个库开始进行脚本的编写了
相关产品与服务
数据库备份服务
数据库备份服务(Database Backup Service,简称 DBS)是为用户提供连续数据保护、低成本的备份服务。数据库备份拥有一套完整的数据备份和数据恢复解决方案,具备实时增量备份以及快速的数据恢复能力,它可以为多种部署形态的数据库提供强有力的保护,包括企业 IDC 数据中心、其他云厂商数据库及腾讯公有云数据库。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档