【MySQL备份】Python备份MySQL数据库
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import MySQLdb
import time
import datetime
import os
dbuser = 'root'
dbpassword = 'root'
dbhost = '127.0.0.1'
dbcharset ='utf8'
backupdir = '/data/backup'
backupdate = time.strftime("%Y%m%d")
sqlstr = "show databases;"
try:
conndb = MySQLdb.connect("127.0.0.1","root","root","elon")
conndb.select_db('elon')
cursql1=conndb.cursor()
cursql1.execute(sqlstr)
alldatabase = cursql1.fetchall()
print('The db backup to start! %s' %time.strftime('%Y-%m-%d %H:%M:%S'))
for db in alldatabase:
dbname = db[0]
filename = '%s/%s_%s.sql' %(backupdir,backupdate,dbname)
print(filename)
if os.path.exists(filename):
os.remove(filename)
os.system("mysqldump -h%s -u%s -p%s %s --single-transaction > %s/%s_%s.sql" %(dbhost,dbuser,dbpassword,dbname,backupdir,backupdate,dbname))
print('The database backup success! %s' %time.strftime('%Y-%m-%d %H:%M:%S'))
except MySQLdb.Error as err_msg:
print ("MySQL error msg:",err_msg)
浙公网安备 33010602011771号