Python备份Mysql数据库

Python备份Mysql数据库
import datetime
import subprocess

def backup_mysql_databases(username, password, host, dir):
    today = datetime.date.today()
    weekday = today.weekday() + 1
    tables_command = f"mysql -u {username} -p{password} -h {host} -e 'SHOW DATABASES;'"
    databases = subprocess.check_output(tables_command, shell=True).decode('utf-8').split('\n')
    databases = [db.strip() for db in databases if db.strip() != '' and db.strip() != 'Database']
    for db in databases:
        backup_command = f"mysqldump -u {username} -p{password} -h {host} {db} > {dir}/{weekday}/{db}.sql"
        subprocess.run(backup_command, shell=True)
        print(f"Database {db} backed up to {dir}/{weekday}/{db}.sql")

backup_mysql_databases('root', '123456', '127.0.0.1', '/var/local/mysql-backup/backup-files')


2