sábado, 15 de junho de 2013

Backup and Recovery for MySQL Script usando innobackup de Percona e Xtrabackup

Original post: http://anothermysqldba.blogspot.com/2013/06/backup-and-recovery-script-for-mysql.html

Então Percona tem a amplamente utilizada ferramenta de backup Xtrabackup e eles percebem que todo mundo costuma usar esta ferramenta em um script de algum tipo. O tem uma página que fala sobre isso: 


Desde que recentemente deu um exemplo de como usar o backup em um anterior cargo . Eu percebi que eu poderia muito bem escrever um script que mostra como roteiro o processo de backup. Além disso, ele tem sido anos desde que eu escrevi em Python, então eu queria ter um pouco de prática também. 

Assim, a introdução do código está abaixo, mas eu coloquei o script no github . 
Ele precisa de mais testes, mas sinta-se livre para verificar o codebase para fora e atualizar e editar. 

Uma vez que o código é testado mais que eu possa atualizar exemplos, mas eu queria ser aberto com esse projeto desde o início. 

Uma vez que é nos primeiros estágios eu recomendo usar o - showcommands = uma opção para que você possa ver o que o código pretende fazer e talvez tente esses comandos.Obviamente, não deve ser utilizado em um sistema de produção ainda. 


Primeiro uma introdução a ela: 

# ./backup_restore.py --help
Usage: backup_restore.py --process=[fullbackup,incremental,prepare,restore] --help --version --showcommands=1

This program enables you to backup full and incremental backups then prepare
and restore them using Percona's Xtrabackup

Options:
--version show program's version number and exit
-h, --help show this help message and exit
--process=PROCESS What would you like to do --process=
[fullbackup,incremental,prepare,restore]
--debug=DEBUG TURN DEBUG ON 1 OR OFF 0 OR VERBOSE 3
--showcommands=SHOWCOMMANDS
Shows the commands instead of executing them except
for the restore section because we go through that
step by step
--backup_root_directory=BACKUP_ROOT_DIRECTORY
THE ROOT DIRECTORY OF ALL YOUR BACKUPS, You can set
DEFAULT at start of the script
--percona_xtrabackup_location=PERCONA_XTRABACKUP_LOCATION
THE LOCATION OF YOUR xtrabackup FILE, You can set
DEFAULT at start of the script
--datadir=DATADIR MYSQL DATA DIR LOCATION, You can set DEFAULT at start
of the script
--username=DB_USERNAME
MySQL Username, You can set DEFAULT at start of the
script
--password=DB_PASSWORD
MySQL Password, You can set DEFAULT at start of the
script
--default_file=DEFAULT_FILE
MySQL my.cnf file location, You can set DEFAULT at
start of the script
--options=PERCONA_OPTIONS
Additional Options for innobackupex