Como fazer backup automaticamente no banco de dados MySQL usando Python

Como fazer backup automaticamente no banco de dados MySQL usando Python
Com o excesso de dados hoje em dia, os bancos de dados estão se tornando enormes e cruciais para suportar qualquer perda de dados. Portanto, o MySQL, que é um RDBMS popular, fornece um utilitário cliente MySqldump para criar um backup lógico de bancos de dados. O usuário pode usar o comando mysqldump em qualquer script para criar um backup automático de bancos de dados MySQL. Como o MySQL suporta muitos idiomas, este post discutirá como fazer backup automaticamente de um banco de dados MySQL usando Python, que é uma linguagem popular na demanda.

Verifique se o Python está instalado em seu sistema e o MySQL Server possui um banco de dados que você deseja fazer backup.

Como fazer backup automaticamente no banco de dados MySQL usando Python?

Vá em direção a qualquer editor de código para escrever o código Python para fazer backup automaticamente o banco de dados MySQL. Para este post, “Código do Visual Studio" está sendo usado:

Crie um arquivo python chamado “cópia de segurança.py”:

Importar essas bibliotecas necessárias no início do arquivo python:

OS de importação
tempo de importação

Digite suas credenciais de banco de dados MySQL:

Db_host = 'your_mysql_host'
Db_user = 'your_mysql_username'
Db_pass = 'your_mysql_password'
Db_name = 'your_database_name'

Forneça o diretório de backup, onde o backup do banco de dados MySQL deve ser salvo. Certifique -se de substituir o caminho de acordo com o seu sistema, “D: \\ mysql_data_backup_files”É o caminho para este post:

Backup_dir = 'd: \\ mysql_data_backup_files'

Introduzir o "Formato de data”Para definir o formato de dados para os arquivos de backup:

date_format = '%y-%m-%d_%h-%m-%s'

Colocou o "Backup_interval”, Para definir o tempo após o qual um backup deve criar automaticamente:

Backup_interval = 20

Observação: Neste post, o intervalo de backup é de 20 segundos, você pode definir qualquer, mas deve ser definido em segundos.

Digite este pedaço de código para formatar a hora atual no "date_format":

enquanto é verdade:
current_time = time.strftime (date_format)

Defina o nome do arquivo de backup:

backup_file = f 'db_name-current_time.sql '

Defina o caminho completo do arquivo de backup digitando o seguinte código:

backup_file_path = os.caminho.Join (backup_dir, backup_file)

Use o comando mysqldump para criar um arquivo de backup, fornecendo os parâmetros necessários de acordo com o seu banco de dados MySQL:

mysqldump_cmd = f'mysqldump -h db_host -u db_user -p db_pass db_name> backup_file_path '
OS.sistema (mysqldump_cmd)

Para economizar espaço no disco, compacte o arquivo de backup usando a ferramenta GZIP digitando:

gzip_cmd = f'gzip backup_file_path '
OS.sistema (gzip_cmd)

Para remover os arquivos de backup antigos, use o comando de encontro e exclua -os. Para esta postagem, arquivos antigos que “7”Os dias serão excluídos:

find_cmd = f'find backup_dir -type f -name "*.gz "-mtime +7 -delete '
OS.sistema (find_cmd)

Por fim, digite isso para aguardar o intervalo de backup:

tempo.sono (backup_interval)

Revise seu arquivo e verifique se tudo está de acordo com o seu sistema e o MySQL Database. Salve o arquivo pressionando “Ctrl + s”:

Execute o arquivo abrindo o terminal ou o prompt de comando neste diretório e digitando:

Pitão.backup exe.py

Vá ao diretório para confirmar que os arquivos de backup são criados após cada “20 segundos”Como era o intervalo de backup:

É visível na saída que os arquivos de backup são criados automaticamente.

Conclusão

Para fazer backup automaticamente de bancos de dados MySQL usando Python. Crie um arquivo python e forneça detalhes do banco de dados MySQL, intervalo de backup, data e formato de nome do arquivo. Use o comando mysqldump para criar arquivos de backup e gzip para comprimi -los. Execute o arquivo para iniciar o processo de backup. Este guia demonstra o processo de criação de arquivos de backup do banco de dados MySQL automaticamente.