Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
from import NoArgsCommand, CommandError
from django.conf import settings
import datetime
import sys, os, os.path
DUMP_DIRECTORY = os.path.expanduser("~/db-backups/")
DUMP_PATTERN = "gazjango_%Y-%m-%d_%H-%M.sql.bz2"
class Command(NoArgsCommand):
def handle_noargs(self, **options):
if settings.DATABASE_ENGINE != 'mysql':
raise CommandError("This command requires a mysql database.")
args = []
if settings.DATABASE_HOST:
args.append('--host=%s' % settings.DATABASE_HOST)
if settings.DATABASE_PORT:
args.append('--port=%s' % settings.DATABASE_PORT)
if settings.DATABASE_USER:
args.append('--user=%s' % settings.DATABASE_USER)
args.append('--password=%s' % settings.DATABASE_PASSWORD)
if not os.path.exists(DUMP_DIRECTORY):
filename =
filepath = os.path.join(DUMP_DIRECTORY, filename)
print "Backing up %s to %s" % (args[-1], filepath)
os.system('mysqldump %s | bzip2 > %s' % (' '.join(args), filepath))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.