Você está na página 1de 1

Backup MySQL mediante sentenas SQL

Como realizar um backup das tabelas de uma base de dados e a sua recuperao a partir de sentenas SQL.
Veremos como realizar uma cpia de segurana da tabela e a sua recuperao a partir de sentenas SQL.
Backup dos dados
Este comando permite-nos fazer uma cpia dos ficheiros das tabelas das quais queremos fazer um backup,
actualmente s funcionam com tabelas do tipo MyIsam, e copia tanto os ficheiros .frm que contm a definio da
tabela, como os ficheiros .myd, que contm os dados.
Antes de executar-se, guarda todas as alteraes que possam existir em memria da tabela, de forma que fique de
uma maneira consistente. Do mesmo modo, durante a execuo do comando, bloqueia a tabela sobre a que se est a
fazer a cpia de segurana para que os dados sejam consistentes na tabela. H que ter em conta que este comando
bloqueia uma das tabelas, consoante vai fazendo a cpia de segurana. Isto poderia provocar uma inconsistncia de
dados a nvel de base de dados, se necessrio fazer um backup de todas as tabelas num instante, sendo ento
necessrio a utilizao do comando "lock tables" para bloquear todas as tabelas antes de comear a cpia de
segurana.
Ao finalizar o comando retorna uma tabela, que contem os dados:
Coluna Valores
Table Nome da tabela
Op Sempre pe "backup"
Msg_type Pode conter status, error, info ou warning.
Msg_text Mensagem descritivo do resultado da operao
Para realizar uma cpia de uma tabela chamada pedidos, pasta Backups:
BACKUP TABLE pedidos TO `/backups/`
Recuperao de dados
Para complementar a sentena "Backup table", Mysql dispem da sentena "Restore table", que permite restaurar
uma tabela a partir de uma cpia de segurana que se realizou com o comando "Backup Table".
Esta opo s se pode utilizar se a tabela que se pretende restaurar no se encontra na base de dados, pois em caso
afirmativo mostrar uma mensagem de erro. Igual que o comando de Backup, esta opo s est disponvel para as
tabelas de tipo MyIsam, e a partir da verso 3.23.25.
Como o comando de backup no copia os ficheiros de ndices, o comando para recuperar os dados, volta a indexar
todos os campos que contem ndices, criando os ficheiros correspondentes. Ao igual que o comando para fazer
cpias de segurana, invocar o comando "restore table" retorna uma tabela, com um registo por cada tabela sobre a
que se fez a base de dados, e que contem a seguinte informao:
Coluna Valores
Table Nome da tabela
Op Sempre pe "restore"
Msg_type Pode conter status, error, info ou warning.
Msg_text Mensagem descritivo do resultado da operao
Para restaurar uma tabela chamada pedidos da pasta Backups base de dados:
RESTORE TABLE pedidos FROM `/backups/`

Você também pode gostar