Importar arquivos muito grandes de banco de dados pode ser um problema. Aprenda nesse tutorial como importar via SSH arquivos SQL muito grandes dividido os mesmos em partes.
- Utilização em servidor Linux (Centos 7)
- Utilizando banco de dados MySQL
- Arquivo do banco de dados é muito grande e não consegue importar diretamente
Passo 1: Primeiramente dividiremos o arquivos .SQL em arquivos menores utilizando o comando split do Linux.
Antes de tudo baixe o programa Putty e acesse seu servidor via SSH
Navegue até a pasta do backup
cd /home/admin/backups
Crie uma pasta para guardar os arquivos divididos (nesta pasta faça upload seu arquivo do banco de dados (seu-banco-dados.sql)
mkdir /home/admin/backups/BD_dividido
Em seguida execute o comando para dividir seu arquivo .SQL em vários arquivos menores.
split -l 300 arquivo_muito_grande_backup.sql bd_
Observação: O prefixo “-n 300” do comando acima é a opção que cada arquivo dividido tenha apenas 300 linhas. O arquivo a ser dividido chama arquivo_muito_grande_backup.sql e os arquivos menores serão salvos na pasta BD_dividido e vão ter nomes sequenciais do tipo: bd_aa, bd_ab, etc.
Passo 2: Subir os arquivos do banco (divididos) para o MySQL
Agora, vamos enviar a sequência de arquivos para o MySQL:
cat bd_* | mysql -u root -p nome_do_banco
Observação: Em root mudar para o nome de usuário do banco de dados e nome_do_banco colocar o nome do seu banco, em seguida vai pedir uma senha, coloque a senha do banco de dados e só aguardar, caso tenha algum erro, o mesmo vai aparecer na tela .
Você pode conectar no MySQL e ver a fila de processamento.
mysql -u root -p
show processlist;
É possivel verificar o aumento de espaço em disco.
du -s /var/lib/mysql
Em ambos os casos, basta executar os comandos várias vezes e verificar o andamento/evolução do procedimento.