python多线程应用——DB2数据库备份

前言:DB2一个实例下,可以存在多个数据库,之前使用shell备份脚本,但是同一时刻只能备份一个数据库,对于几百G的备份文件,这个速度显然太慢,今天学习了Python多线程,刚好应用一下。

分析:1、Python多线程在某些场景上是鸡肋,但是这里使用多线程,目的是开启多个shell子进程。

2、磁盘I/O允许情况下,使用多个db2 backup进程。

3、thread模块有诸多问题,这里使用threading模块。

4、先前备份脚本修改端口来清理已连接应用,太过暴力,虽然都为冷备,但每次重启开销太大,这里使用db2 force application all。

5、如果第四步清理连接异常,那就无法进行备份,暂时未找到捕获异常的合适方式,待考虑,不过使用连续三次清理,不是特别情况,99.9%情况下是OK的。

6、可以不使用多线程,直接在使用subprocess开启多个子进程,这里是应用多线程,subprocess不在展示。

下面是具体代码:

MyThread.py

db2backup.py

要备份的数据库的配置信息:

database.cfg

实例名,数据库名,备份目录

Original: https://www.cnblogs.com/jjzd/p/7496066.html
Author: 浮沉一梦
Title: python多线程应用——DB2数据库备份

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/10668/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部