Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como evitar tempos limite de conexão para grandes importações do MySQL

Estratégias para importar grandes bancos de dados MySQL

Importação do PHPMyAdmin


Provavelmente, se você está lendo isso, o PHPMyAdmin não era uma opção para sua grande importação de banco de dados MySQL. Mas sempre vale a pena tentar, certo? A causa mais comum de falha nas importações do PHPMyAdmin é exceder o limite de importação. Se você estiver trabalhando localmente ou tiver seu próprio servidor, tente alterar as configurações ini do MySQL normalmente encontradas no arquivo my.ini localizado na pasta de instalação do MySQL. Se você estiver trabalhando com WAMP no Windows, poderá acessar esse arquivo usando o painel de controle WAMP em MySQL> my.ini. Lembre-se de reiniciar o WAMP para que suas novas configurações sejam usadas. As configurações que você pode querer aumentar aqui incluem:
max_allowed_packet
read_buffer_size

Mesmo com configurações aprimoradas de importação do MySQL, você ainda pode descobrir que as importações expiram devido às configurações do PHP. Se você tiver acesso ao PHP.ini, poderá editar o tempo máximo de execução e as configurações relacionadas. No WAMP, acesse o arquivo PHP.ini no painel de controle do WAMP em PHP> php.ini. Considere aumentar os limites das seguintes configurações ao tentar grandes importações do MySQL:
max_execution_time
max_input_time
memory_limit

Usando o importador de dump MySQL escalonado do Big Dump


Se a importação básica do PHPMyAdmin não funcionar, você pode tentar o script Big Dump do Ozerov.de para importações escalonadas do MySQL. O que esse script útil faz é executar sua importação em blocos menores, que é exatamente o que geralmente é necessário para importar com sucesso um grande dump do MySQL. É um download gratuito disponível em http://www.ozerov.de/bigdump/ .

O processo de usar o Big Dump é bastante simples:você basicamente posiciona seu arquivo de importação SQL e o script Big Dump juntos no servidor, define algumas configurações no script Big Dump e depois executa o script. Big Dump cuida do resto!

Um ponto-chave sobre essa ótima opção é que ela não funcionará em exportações do MySQL que contêm inserções estendidas. Portanto, se você tiver a opção de evitar inserções estendidas, experimente. Caso contrário, você terá que usar outro método para importar seu arquivo MySQL grande.

Vá linha de comando com console MySQL


Se você estiver executando o WAMP (e mesmo se não estiver), sempre há a opção de ir direto ao ponto e importar seu grande banco de dados MySQL usando o console MySQL. Estou importando um banco de dados de 4 GB dessa maneira enquanto escrevo este post. Na verdade, é por isso que tenho algum tempo para escrever, porque mesmo esse método leva tempo quando você tem um arquivo SQL de 4 GB para importar!

Alguns desenvolvedores (geralmente eu) ficam intimidados ao abrir uma tela preta e digitar comandos enigmáticos nela. Mas pode ser libertador e, quando se trata de bancos de dados MySQL, geralmente é o melhor caminho a seguir. No WAMP, acessamos o console MySQL a partir do painel de controle do WAMP em MySQL> MySQL Console. Agora vamos aprender os 2 comandos simples do MySQL Console que você precisa para importar um banco de dados MySQL, estilo de linha de comando:
use `db_name`

Comando use seguido pelo nome do banco de dados informará ao console MySQL qual banco de dados você deseja usar. Se você já configurou o banco de dados para o qual está importando, comece emitindo o comando use comando. Suponha que seu banco de dados se chame my_great_database . Nesse caso, emita o seguinte comando no MySQL Console. Observe que os comandos devem terminar com um ponto e vírgula.
mysql-> use my_great_database;

mysql-> source sql_import_file.sql

Comando source seguido pela localização de um arquivo SQL irá importar o arquivo SQL para o banco de dados que você especificou anteriormente com o use comando. Você deve fornecer o caminho, portanto, se estiver usando WAMP em seu servidor local, comece colocando o arquivo SQL em algum lugar fácil de obter, como C:\sql\my_import.sql. O comando completo com este caminho de exemplo seria:
mysql-> source C:\sql\my_import.sql;

Depois de executar esse comando, o arquivo SQL deve começar a ser importado. Deixe as consultas serem executadas e permita que a importação seja concluída antes de fechar o console do MySQL.

Documentação adicional para a linha de comando do MySQL pode ser encontrada aqui:http:// dev.mysql.com/doc/refman/5.5/en/mysql.html .

Outra solução é usar o MySQL Workbench .