PalmaSolutions

MySQL backup script

Dec 28th, 2018
541
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.00 KB | None | 0 0
  1. #!/usr/bin/env python
  2. #
  3. # Database backup script in Python
  4. # source: https://www.mariusv.com/python-script-to-backup-mysql-databases-on-debian-servers
  5.  
  6. import ConfigParser
  7. import os
  8. import time
  9.  
  10. # On Debian, /etc/mysql/debian.cnf contains 'root' a like login and password.
  11. config = ConfigParser.ConfigParser()
  12. config.read("/etc/mysql/debian.cnf")
  13. username = config.get('client', 'user')
  14. password = config.get('client', 'password')
  15. hostname = config.get('client', 'host')
  16.  
  17. filestamp = time.strftime('%Y-%m-%d')
  18.  
  19. # Get a list of databases with :
  20. database_list_command="mysql -u %s -p%s -h %s --silent -N -e 'show databases'" % (username, password, hostname)
  21. for database in os.popen(database_list_command).readlines():
  22.     database = database.strip()
  23.     if database == 'information_schema':
  24.         continue
  25.     filename = "/backups/mysql/%s-%s.sql" % (database, filestamp)
  26.     os.popen("mysqldump -u %s -p%s -h %s -e --opt -c %s | gzip -c > %s.gz" % (username, password, hostname, database, filename))
Advertisement
Add Comment
Please, Sign In to add comment