#!/usr/bin/env python

# Version: 1.1

# Author:
# Andreas Glaser aka JaZz
# www.andreas-glaser.com

# Requirements:
# python, mysqldump, bzip2
# Debian Install: apt-get install python mysqldump bzip2

# 1. Import
from time import gmtime, strftime
import subprocess

# 2. Config
mysqlUser = "root"
mysqlPwd = "YOUR_PASSWORD"
mysqlDatabase = "--all-databases"
dumpDir = "/tmp/"
dumpFile = "mysqldump-" + strftime("%Y-%m-%d-%H-%M-%S", gmtime()) + ".sql"

# 3. Process
print strftime("%Y-%m-%d-%H-%M-%S", gmtime()) + ": Mysqldump started"
subprocess.call("mysqldump --user " + mysqlUser + " --password=" + mysqlPwd + " --force --flush-privileges --compress --comments " + mysqlDatabase + " > " + dumpDir + dumpFile, shell=True)
subprocess.call("bzip2 -9v " + dumpDir + dumpFile, shell=True)
print strftime("%Y-%m-%d-%H-%M-%S", gmtime()) + ": Mysqldump finished"
