A MySQL backup tool, Simple, Fast and Powerful. 一个简单,高效,强大的MySQL备份工具。
Project description
ShowBackup
介绍
showbackup是一个短小精干的MySQL数据库备份脚本,支持全库,指定库,指定表,定时快速备份。
- 支持全库备份,指定库备份,指定表备份
- 支持备份输出sql文件或压缩文件
- 支持定时自动化备份任务
- 支持清理过期历史备份文件
安装
$ pip3 install showbackup
配置
首次使用必须先配置运行参数
运行showbackup --config来查看配置文件的位置,使用vi编辑它:
$ showbackup --config
请通过编辑showbackup配置文件来完成配置
vi /your/python/path/dist-packages/showbackup/conf.json
配置文件说明
{
"mysql": {
"host": "localhost",
"port": 3306,
"user": "root",
"pwd": "",
"source": [
{"db": "testdb01", "tables": ["users", "posts"]},
{"db": "testdb02"}
],
"backup_path": "/opt/showbackup/mysql",
"is_zip": false,
"every_day_at": "17:49",
"keep_days": "3"
}
}
/**
* host: 表示mysql的连接地址
* port: mysql的端口号
* user: 用于备份数据库的账号
* pwd: 用于备份数据库的密码
* source: 备份的数据内容(支持全库备份,指定库备份,指定表备份)
- 全库备份
source: []
- 指定库,eg.备份testdb01和testdb02两个数据库
source: [{'db':'testdb01'}, {'db': 'testdb02'}]
- 指定表,eg.仅备份testdb01数据库中的users和posts表和备份testdb02数据库
source: [
{'db':'testdb01', 'tables':['users', 'posts']},
{'db': 'testdb02'}
]
* backup_path: 填写备份文件存放的目录,默认 /opt/showbackup/mysql
* is_zip: 是否启用压缩
* every_day_at:
- 每天执行备份的时间点,支持HH:MM:SS 或者 HH:MM
- eg. 每天凌晨三点整,03:00
- eg. 每天凌晨三点零八分二十六秒,03:08:26
* keep_days: 历史备份文件保留最近几天
*/
使用
手动执行
# 手动执行一次数据库备份,备份完成程序自动退出
$ sudo showbackup mysql
所有任务均已完成,总耗时12.32秒
$ tree /opt/showbackup/mysql
mysql
└── 201800712_135955
├── testdb02
│ ├── table_user.sql.gz
│ └── table_visitor.sql.gz
└── test_len
└── db_test_len.sql.gz
后台运行
# 开始一个数据库定时备份的后台任务
$ sudo showbackup mysql -s &
将于每天 03:00 开始执行备份任务...
# 结束后台任务(找出showbackup的PID,杀掉PID)
$ ps -ef | grep showbackup
25415 16958 0 1:35PM ttys001 0:00.24 /usr/bin/python3 /usr/local/bin/showbackup mysql -s
$ kill -9 25415
使用supervisor运行
# supervisor配置文件
[program:showbackup]
command=/usr/local/bin/showbackup mysql -s ; 程序启动命令
$ supervisorctl start showbackup
showbackup: started
$ supervisorctl status
showbackup RUNNING pid 18245, uptime 0 days, 0:0:03
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
showbackup-0.1.3.tar.gz
(12.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file showbackup-0.1.3.tar.gz.
File metadata
- Download URL: showbackup-0.1.3.tar.gz
- Upload date:
- Size: 12.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76de6d159d660a9006deff237b582ffd03d9114bb5cd9516cd144af13d0ee4ce
|
|
| MD5 |
6725de6e41bbfb646867649258a58d49
|
|
| BLAKE2b-256 |
5e216ebc4e7d494f0cbbea210e84b224ea1ecc1d9cc924f189ed5719f0ffa42d
|
File details
Details for the file showbackup-0.1.3-py3-none-any.whl.
File metadata
- Download URL: showbackup-0.1.3-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3fc9e2464bebf704f1dce884cc5038d6ca46cb949a274a6e9f0ffcb963f21a8
|
|
| MD5 |
fa8cd6a00a34f867771ae54a769e6805
|
|
| BLAKE2b-256 |
74129730436d4c3fd0199de23dadbf88b4d396e0e7c334412c365bb7df4da019
|