phpMyAdmin - Erro> Parâmetro de formato incorreto?


119

Tenho um site de produção em WordPress.

Eu exportei o banco de dados pelos seguintes comandos: select database > export > custom > select all tables > select .zip compression > 'Go'

Baixei o arquivo example.sql.zip, mas quando faço upload para meu localhost, recebo este erro: phpMyAdmin - Error > Incorrect format parameter

Tentei exportar com outros formatos e recebo o mesmo erro.

Eu tentei com outros bancos de dados SQL e exporta / importa muito bem.

O que poderia ser? Um banco de dados corrompido ou outro?

obrigado


você conseguiu a solução
Shiva Sai

Não. Estou surpreso que parece não haver suporte para isso ..
henry

No meu caso, selecione um esquema / tabela (qualquer) antes de lançar a consulta resolveu o problema ...
AssuntoDelta

Respostas:


340

Este problema não é devido ao banco de dados corrompido. Encontrei a solução neste vídeo - https://www.youtube.com/watch?v=MqOsp54EA3I

Sugere-se aumentar os valores de duas variáveis ​​no arquivo php.ini. Alterar o seguimento em php.ini

upload_max_filesize=64M
post_max_size=64M

Em seguida, reinicie o servidor.

Isso resolveu meu problema. A esperança resolve o seu também.


2
Obrigado pela ideia que foi boa, mas ainda não funcionou. Estou realmente sem ideias aqui ...
henry

14
Pode muito bem aumentar o max_exection_timetambém porque o banco de dados pode ser grande e disparar um tempo limite.
VeeK

isso é correto .. ambas as configurações juntas são uma resposta correta. não o primeiro item. Tento resolver pelo primeiro item e não consigo. mas quando o segundo resolvido. obrigado, StackOverflow obrigado pooja.
sabre tabatabaee yazdi

1
Veja esta pergunta também se estiver usando o MAMP, porque pode ter dificuldade em encontrarphp.ini, como eu.
GDP2

Trabalhando muito bem. Obrigado!
user3312884

41

Compacte o seu .sqlarquivo e certifique-se de nomeá-lo .[format].[compression], ou seja database.sql.zip.

Conforme observado acima, PhpMyAdmin gera este erro se o seu .sqlarquivo for maior do que o tamanho máximo de upload permitido - mas, no meu caso, o máximo foi 50 MiB, apesar de eu ter definido todas as opções observadas nas respostas anteriores (procure "Máx .: 50 MiB" ao lado do botão de upload no PhpMyAdmin).


1
Isso funcionou para mim. Eu tinha max_execution_time=0e post_max_size=100M, mas um arquivo de 80 MB ainda deu um erro. Fechar como file.sql.zipfuncionou.
jogi99 de

Isso resolveu meu problema. Meu arquivo sql estava apenas ligeiramente acima do tamanho máximo, mas observe que a compactação pode reduzir o tamanho significativamente: No meu caso, 16 vezes.
Paul

Isso me ajudou. Eu tinha 100 MB configurados no php.ini e o arquivo estava gerando o erro em 46% do upload, que era de 43 MB. Eu fechei e sem problema.
Doug Wolfgram de

33

Para mim, ajustar os 2 valores não foi suficiente. Se o arquivo for muito grande, você também precisa ajustar as variáveis ​​de tempo de execução.

Primeiro, ../php/php.ini

upload_max_filesize=128M
post_max_size=128M
max_execution_time=1000

Então, ../phpMyAdmin\libraries\config.default.php

$cfg['ExecTimeLimit'] = 1000;

Isso funcionou para mim. As variáveis ​​podem ser escolhidas de forma diferente, é claro. Talvez o tempo de execução deva ser ainda maior. E o tamanho depende do tamanho do seu arquivo.


20

Nenhuma dessas respostas funcionou para mim. Tive que usar a linha de comando:

mysql -u root db_name < db_dump.sql
SET NAMES 'utf8';
SOURCE db_dump.sql;

Feito!


Obrigado @Pedro! :)
Luis Gouveia

Obrigado pela sugestão. Funcionou como um encanto!
mithushancj

5

Acabei de passar pelo mesmo problema ao tentar importar um CSV (400 MBs) e também estava recebendo um erro em vermelho dizendo

Erro - parâmetro de formato incorreto

Inicialmente pensei que poderia ter sido os parâmetros e testei novamente. Mais rápido, da minha experiência anterior com ele, percebi que era por outros motivos (tamanho do arquivo, execução do script tem tempo máximo definido, etc).

Então, eu fui para php.ini

php.ini

e alterou os valores das seguintes configurações

max_execution_time = 3000
max_input_time = 120
memory_limit = 512M
post_max_size = 1500M
upload_max_filesize = 1500M 

Após esta modificação, interrompeu o MySQL e o Apache e os iniciou novamente, foi para o phpmyadmin tentando importar. Então eu encontrei outro erro

Erro fatal: tempo máximo de execução de 300 segundos excedido

que foi corrigido simplesmente definindo em xampp / phpmyadmin / libraries / config.default.php

config.default.php

$cfg['ExecTimeLimit'] = 0;

Definir como 0 desativa os limites de tempo de execução.

Então, depois de um tempo, a importação aconteceu sem problemas.



3

Sem problemas, importei diretamente da linha de comando.

mysql -uroot -hURLServer -p DBName< filename.sql

2

Este erro é causado pelo fato de que o tamanho máximo de upload é (Max: 2.048 KiB). Se o seu arquivo for maior do que isso, você receberá um erro. Compacte o arquivo e carregue-o novamente, você não receberá o erro.


1

Eu tive esse erro e, como estou em hospedagem compartilhada, não tenho acesso ao php.ini, então não tinha certeza de como poderia corrigi-lo, o host também não parecia ter a menor ideia. No final, esvaziei o cache do meu navegador, recarreguei o phpmyadmin e ele voltou!


1

Nota: Se você estiver usando o MAMP, você DEVE editar o arquivo usando o editor integrado.

Selecione PHP na seção de idiomas (Coluna do Menu LH) A seguir, no painel principal próximo ao menu suspenso da versão padrão, clique na pequena seta. Isso iniciará o arquivo php.ini usando o editor de texto MAMP. todas as alterações feitas neste arquivo persistirão após a reinicialização dos servidores. Se você tentar editar o arquivo diretamente, ele simplesmente substituirá todas as alterações feitas.

Desnecessário dizer: "Aqui estão dragões!" então, corte e cole uma cópia do original e guarde-o em um local seguro em caso de desastre.insira a descrição da imagem aqui


1

Se você usar docker-compose, basta definir UPLOAD_LIMIT

phpmyadmin:
    image: phpmyadmin/phpmyadmin
    environment:
        UPLOAD_LIMIT: 1G

0

Eu tive esse problema, mas com um contêiner docker (usuários phpmyadmin),

Solução:

  • Entre no contêiner phpmyadmin docker exec -it idcontainer /bin/bash
  • Mover cd /usr/local/etc/php/
  • Crio php.ini arquivo
  • Modifique upload_max_filesize=128M post_max_size=128M max_execution_time=1000
  • Salve e reinicie o contêiner.

Este problema estava em um pc com Windows, no Linux eu não precisava fazer isso.


-1

Nenhuma das respostas acima resolveu para mim.

Eu também não consigo encontrar a pasta 'libraries' no meu xampp-ubuntu.

Então, eu simplesmente reiniciei usando os seguintes comandos:

sudo service apache2 restart

e

sudo service mysql restart

Just restarted apache and mysql. Logged in phpmyadmin again and it worked as usual.

Obrigado a mim .. !!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.