Skip to content

Backup MySQL with Python

#!/usr/bin/python
#purpose: backup mysql database usin mysqldump
# date: 05.07.2009
# S.Kraneis
import os
import time

DESTDIR='/home/kraneis/python/backup/'
USERNAME='root'
PASSWORD='testpw'
DATE= time.strftime("%Y-%m-%d")
DBLIST = ["testdb"]

def DUMP_CMD(x):
        #       cmd = "mysqldump --add-drop-table -u %s -p%s %s > %s%s-%s.sql" % (USERNAME,PASSWORD,x,DESTDIR,x,DATE)
        cmd1 = "mysqldump --add-drop-table -u " + USERNAME + " -p" + PASSWORD + " " + x + " > " + DESTDIR + "" + x + "-" + DATE + ".sql" 
        DO_CMD ( cmd1 , 'Dump DB','Dump successful' )

        cmd2= "/bin/bzip2 -z -f -k -q " + DESTDIR + "" + x + "-" + DATE  + ".sql"
        DO_CMD ( cmd2 , 'Compress DB','Compress successful' )

        return 0
                    


def DO_CMD ( command, what, msg):
        print what + " : " + command
        if os.system(command) == 0:
                print msg
        else:
                print 'Error: ' + what 
        return DO_CMD
        

for db in DBLIST:
        DUMP_CMD(db) 

#END