Procurar
Últimos assuntos
Quem está conectado?
Há 2 usuários online :: 0 registrados, 0 invisíveis e 2 visitantes Nenhum
[ Ver toda a lista ]
O recorde de usuários online foi de 192 em Ter Out 26, 2021 6:07 am
Mysql Backup
Página 1 de 1
Mysql Backup
Fazendo backup das bases de dados do MySQL
Carlos E. Morimoto criou 29/mai/2008 às 14h0613
Uma das grandes dúvidas de qualquer administrador iniciante é como fazer backup das bases de dados do MySQL, já que os dados são gravados e acessados através do servidor MySQL e não diretamente através de arquivos, como no caso dos arquivos referentes aos sites, salvos na pasta "/var/www", por exemplo.
As bases de dados do MySQL são salvas por padrão dentro da pasta "/var/lib/mysql". Ao criar a base de dados "phpbb", por exemplo, será criada a pasta "/var/lib/mysql/phpbb", contendo um conjunto de arquivos, referentes às tabelas criadas.
A forma mais simples de fazer backup das bases de dados do MySQL é simplesmente salvar o conteúdo da pasta "/var/lib/mysql", criando um arquivo .tar.gz ou mesmo copiando os arquivos diretamente para outra partição. O maior problema é que as bases de dados são alteradas continuamente durante a operação do banco de dados, o que leva a cópias inconsistentes. Se alguns dos arquivos dentro da pasta com a base mudam no meio da cópia, o backup conterá uma mistura de dados novos e antigos, uma receita para o desastre.
A forma mais segura é parar o serviço do MySQL antes de fazer o backup, garantindo assim que nada será alterado durante a cópia, como no exemplo abaixo:
A segunda opção é fazer um backup online, sem parar o servidor. O utilitário mais simples (e provavelmente o mais usado) para isso é o mysqldump, que acompanha o pacote principal do MySQL.
Diferente do método anterior, onde os arquivos são copiados diretamente, o mysqldump acessa o banco de dados por vias normais, da mesma forma que um aplicativo qualquer faria. Em outras palavras, ele não lê os arquivos, mas sim as informações armazenadas nas bases de dados. Isso permite que o backup seja consistente, mesmo que as bases de dados sejam alteradas durante o backup.
Para salvar todas as bases de dados do servidor no arquivo "backup.sql", criado no diretório atual, por exemplo, o comando seria:
Se o comando parasse por aí, o mysqldump simplesmente escreveria todo o conteúdo das bases de dados na própria janela do terminal, resultando em uma longa exibição de informações, sem muita utilidade. Como queremos que a saída seja salva em um arquivo, usamos o ">", que redireciona a saída para o arquivo especificado.
O arquivo "backup.sql" gerado é basicamente um arquivo de texto gigante contendo declarações de todas as informações armazenadas. Você pode reduzir o tamanho do arquivo para um quarto (ou menos) do tamanho original compactando o arquivo, o que pode ser feito adicionando a opção "| gzip" antes do ">" no comando, como em:
Continuando, os comandos acima permitem fazer um backup completo de todas as bases do servidor, que poderia ser usado para restaurar os dados em uma instalação limpa do MySQL. É possível também fazer backups localizados, contendo apenas uma base de dados específica.
Nesse caso, em vez de usar a opção "-A", você usaria a opção "-B", seguida pela base de dados a ser salva, como em:
ERROR 1050 at line 19: Table 'wp_comments' already exists
A solução no caso é remover a base de dados antiga usando o cliente MySQL e criar outra em branco para então fazer a restauração, como em:
Esta opção pode ser adicionada também ao comando para fazer o backup completo das bases de dados, facilitando assim sua restauração:
FONTE:http://www.hardware.com.br/dicas/mysql.html
Carlos E. Morimoto criou 29/mai/2008 às 14h0613
Uma das grandes dúvidas de qualquer administrador iniciante é como fazer backup das bases de dados do MySQL, já que os dados são gravados e acessados através do servidor MySQL e não diretamente através de arquivos, como no caso dos arquivos referentes aos sites, salvos na pasta "/var/www", por exemplo.
As bases de dados do MySQL são salvas por padrão dentro da pasta "/var/lib/mysql". Ao criar a base de dados "phpbb", por exemplo, será criada a pasta "/var/lib/mysql/phpbb", contendo um conjunto de arquivos, referentes às tabelas criadas.
A forma mais simples de fazer backup das bases de dados do MySQL é simplesmente salvar o conteúdo da pasta "/var/lib/mysql", criando um arquivo .tar.gz ou mesmo copiando os arquivos diretamente para outra partição. O maior problema é que as bases de dados são alteradas continuamente durante a operação do banco de dados, o que leva a cópias inconsistentes. Se alguns dos arquivos dentro da pasta com a base mudam no meio da cópia, o backup conterá uma mistura de dados novos e antigos, uma receita para o desastre.
A forma mais segura é parar o serviço do MySQL antes de fazer o backup, garantindo assim que nada será alterado durante a cópia, como no exemplo abaixo:
- Código:
# /etc/init.d/mysql stop
# tar -zcvf mysql.tar.gz /var/lib/mysql/
# /etc/init.d/mysql start
A segunda opção é fazer um backup online, sem parar o servidor. O utilitário mais simples (e provavelmente o mais usado) para isso é o mysqldump, que acompanha o pacote principal do MySQL.
Diferente do método anterior, onde os arquivos são copiados diretamente, o mysqldump acessa o banco de dados por vias normais, da mesma forma que um aplicativo qualquer faria. Em outras palavras, ele não lê os arquivos, mas sim as informações armazenadas nas bases de dados. Isso permite que o backup seja consistente, mesmo que as bases de dados sejam alteradas durante o backup.
Para salvar todas as bases de dados do servidor no arquivo "backup.sql", criado no diretório atual, por exemplo, o comando seria:
- Código:
# mysqldump -u root -p -x -e -A > backup.sql
Se o comando parasse por aí, o mysqldump simplesmente escreveria todo o conteúdo das bases de dados na própria janela do terminal, resultando em uma longa exibição de informações, sem muita utilidade. Como queremos que a saída seja salva em um arquivo, usamos o ">", que redireciona a saída para o arquivo especificado.
O arquivo "backup.sql" gerado é basicamente um arquivo de texto gigante contendo declarações de todas as informações armazenadas. Você pode reduzir o tamanho do arquivo para um quarto (ou menos) do tamanho original compactando o arquivo, o que pode ser feito adicionando a opção "| gzip" antes do ">" no comando, como em:
- Código:
# mysqldump -u root -p -x -e -A | gzip > backup.sql.gz
- Código:
# gunzip backup.sql.gz
- Código:
# mysqldump -u root -p12345 -x -e -A | gzip > backup.sql.gz
Continuando, os comandos acima permitem fazer um backup completo de todas as bases do servidor, que poderia ser usado para restaurar os dados em uma instalação limpa do MySQL. É possível também fazer backups localizados, contendo apenas uma base de dados específica.
Nesse caso, em vez de usar a opção "-A", você usaria a opção "-B", seguida pela base de dados a ser salva, como em:
- Código:
# mysqldump -u root -p -x -e -B phpbb > phpbb.sql
- Código:
# mysql -u root -p --database=phpbb < phpbb.sql
- Código:
# mysql -u root -p12345 --database=phpbb < phpbb.sql
ERROR 1050 at line 19: Table 'wp_comments' already exists
A solução no caso é remover a base de dados antiga usando o cliente MySQL e criar outra em branco para então fazer a restauração, como em:
- Código:
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 18
Server version: 5.0.32-Debian_7etch5-log Debian etch distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql> DROP DATABASE phpbb;
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE DATABASE phpbb;
Query OK, 1 row affected (0.00 sec)
mysql> exit
Bye
- Código:
# mysql -u root -p --database=phpbb < phpbb.sql
- Código:
# mysqldump --add-drop-table -u root -p -x -e -B phpbb > phpbb.sql
Esta opção pode ser adicionada também ao comando para fazer o backup completo das bases de dados, facilitando assim sua restauração:
- Código:
# mysqldump --add-drop-table -u root -p -x -e -A > backup.sql
- Código:
# mysql -u root -p < backup.sql
FONTE:http://www.hardware.com.br/dicas/mysql.html
juk- Mensagens : 274
Data de inscrição : 02/04/2012
Forma resumida
$mysqldump -h localhost -u armenio -pjujuba meuBanco > backup_meuBanco.sql
Onde:
Database: meuBanco
Host: localhost
Username: armenio
Password: jujuba
Para restaurar o backup, execute o comando:
$mysql -h localhost -u armenio -pjujuba meuBanco < backup_meuBanco.sql
Onde:
Database: meuBanco
Host: localhost
Username: armenio
Password: jujuba
Para restaurar o backup, execute o comando:
$mysql -h localhost -u armenio -pjujuba meuBanco < backup_meuBanco.sql
juk- Mensagens : 274
Data de inscrição : 02/04/2012
Tópicos semelhantes
» SCRIPT MYSQL
» Consultas mysql
» MYSQL AULA 22/03/2013
» PROCEDURE e FUNCTION em mysql
» mysql exemplo de "references"
» Consultas mysql
» MYSQL AULA 22/03/2013
» PROCEDURE e FUNCTION em mysql
» mysql exemplo de "references"
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Qui maio 16, 2024 9:29 pm por juk
» Atividade Prática 5: Classes Abstratas e Interfaces
Seg maio 13, 2024 10:24 pm por juk
» Atividade Prática 4: Exercitando Herança e Polimorfismo
Seg maio 13, 2024 10:15 pm por juk
» Atividade Prática 4: Exercitando Herança e Polimorfismo
Seg maio 13, 2024 10:11 pm por juk
» Atividade Prática 3: Exercitando o relacionamento entre classes
Seg maio 13, 2024 10:06 pm por juk
» Atividade Complementar: Exercitando a criação de classes e objetos
Seg maio 13, 2024 10:01 pm por juk
» Atividade Prática 2: Exercitando a criação de classes e objetos
Seg maio 13, 2024 9:54 pm por juk
» Atividade Prática 1: Problemas Básicos de Programação
Seg maio 13, 2024 9:50 pm por juk
» Principais IDEs para Java
Qui Abr 25, 2024 9:27 pm por juk