PalmaSolutions icon

MySQL backup script

PalmaSolutions | PRO | 12/28/18 06:50:54 PM UTC | 0 ⭐ | 534 👁️ | Never ⏰ | []
Python |

1 KB

|

None

|

0 👍

/

0 👎

#!/usr/bin/env python
#
# Database backup script in Python
# source: https://www.mariusv.com/python-script-to-backup-mysql-databases-on-debian-servers
 
import ConfigParser
import os
import time
 
# On Debian, /etc/mysql/debian.cnf contains 'root' a like login and password.
config = ConfigParser.ConfigParser()
config.read("/etc/mysql/debian.cnf")
username = config.get('client', 'user')
password = config.get('client', 'password')
hostname = config.get('client', 'host')
 
filestamp = time.strftime('%Y-%m-%d')
 
# Get a list of databases with :
database_list_command="mysql -u %s -p%s -h %s --silent -N -e 'show databases'" % (username, password, hostname)
for database in os.popen(database_list_command).readlines():
    database = database.strip()
    if database == 'information_schema':
        continue
    filename = "/backups/mysql/%s-%s.sql" % (database, filestamp)
    os.popen("mysqldump -u %s -p%s -h %s -e --opt -c %s | gzip -c > %s.gz" % (username, password, hostname, database, filename))

Comments