phpMyAdmin - Błąd> Nieprawidłowy parametr formatu?

119

Mam witrynę produkcyjną WordPress.

Wyeksportowałem bazę danych za pomocą następujących poleceń: select database > export > custom > select all tables > select .zip compression > 'Go'

Pobrałem plik example.sql.zip, ale kiedy przesyłam do mojego localhost, pojawia się ten błąd: phpMyAdmin - Error > Incorrect format parameter

Próbowałem wyeksportować w innych formatach i otrzymuję ten sam błąd.

Próbowałem z innymi bazami danych SQL i dobrze eksportuje / importuje.

Co to mogło być? Uszkodzona baza danych lub inna?

Dzięki

henz
źródło
czy masz rozwiązanie
Shiva Sai,
nie. Dziwię się, że nie ma na to poparcia ...
henry
W moim przypadku, przed wyrzuceniem zapytanie rozwiązał problem wybrać schemat / tabeli (dowolny) ...
SubjectDelta

Odpowiedzi:

342

Ten problem nie jest spowodowany uszkodzoną bazą danych. Znalazłem rozwiązanie z tego filmu - https://www.youtube.com/watch?v=MqOsp54EA3I

Sugeruje się zwiększenie wartości dwóch zmiennych w pliku php.ini. Zmiana w php.ini

upload_max_filesize=64M
post_max_size=64M

Następnie zrestartuj serwer.

To rozwiązało mój problem. Nadzieja też rozwiązuje Twoje.

Pooja Mistry
źródło
2
Dzięki za pomysł, który był dobry, jednak nadal nie działał. Naprawdę nie mam tu pomysłów ...
henry
15
max_exection_timeRównie dobrze może to zwiększyć, ponieważ baza danych może być duża i wyzwolić przekroczenie limitu czasu.
VeeK
zgadza się ... obie konfiguracje razem to poprawna odpowiedź. nie pierwsza pozycja. Próbuję rozwiązać według pierwszej pozycji i nie mogę. ale kiedy drugi rozwiązany. dzięki, StackOverflow dzięki pooja.
saber tabatabaee yazdi
1
Zobacz to pytanie również, jeśli używasz MAMP, ponieważ możesz mieć trudności ze znalezieniemphp.ini, tak jak ja.
GDP2
Działa świetnie. Dziękuję Ci!
user3312884
41

Skompresuj .sqlplik i nadaj mu nazwę .[format].[compression], tj database.sql.zip.

Jak wspomniano powyżej, PhpMyAdmin zgłasza ten błąd, jeśli twój .sqlplik jest większy niż maksymalny dozwolony rozmiar wysyłania - ale w moim przypadku maksymalny to 50 MiB pomimo tego, że ustawiłem wszystkie opcje wymienione w poprzednich odpowiedziach (poszukaj "Max: 50 MiB" obok przycisku przesyłania w PhpMyAdmin).

mattavatar
źródło
1
To zadziałało dla mnie. Miałem max_execution_time=0i post_max_size=100M, ale plik 80 MB nadal wyświetlał błąd. Zapięcie, jak załatwił sprawę file.sql.zip.
jogi99
To rozwiązało mój problem. Mój plik sql był tylko nieznacznie większy niż maksymalny rozmiar, ale zauważ, że kompresja może znacznie zmniejszyć rozmiar: w moim przypadku 16-krotnie.
Paul
To mi pomogło. Miałem ustawione 100 MB w php.ini, a plik generował błąd przy 46% wysyłania, czyli 43 MB. Spakowałem to i nie ma problemu.
Doug Wolfgram
33

Dla mnie dostosowanie 2 wartości nie wystarczyło. Jeśli plik jest zbyt duży, musisz również dostosować zmienne czasu wykonywania.

Najpierw ../php/php.ini

upload_max_filesize=128M
post_max_size=128M
max_execution_time=1000

Następnie ../phpMyAdmin\libraries\config.default.php

$cfg['ExecTimeLimit'] = 1000;

To załatwiło sprawę dla mnie. Oczywiście zmienne można wybrać inaczej. Może czas wykonania musi być jeszcze dłuższy. Rozmiar zależy od rozmiaru pliku.

Martin N
źródło
20

Żadna z tych odpowiedzi nie zadziałała dla mnie. Musiałem użyć wiersza poleceń:

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

Gotowe!

Pedro Araujo Jorge
źródło
Obrigado @Pedro! :)
Luis Gouveia
Dzieki za sugestie. Działał jak urok!
mithushancj
6

Właśnie przeszedłem przez ten sam problem, próbując zaimportować plik CSV (400 MB), a także pojawił się błąd na czerwono

Błąd - nieprawidłowy parametr formatu

Początkowo myślałem, że to mogły być parametry i ponownie przetestowano. Szybciej, z mojego poprzedniego eksperymentu z nim, zdałem sobie sprawę, że jest to spowodowane innymi przyczynami (rozmiar pliku, wykonanie skryptu ma zdefiniowany maksymalny czas itp.).

Więc przeszedłem do php.ini

php.ini

i zmienił wartości z następujących ustawień

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

Po tej modyfikacji zatrzymał MySQL i Apache i uruchomił je ponownie, przeszedł do phpmyadmin próbując zaimportować. Wtedy doszedłem do kolejnego błędu

Błąd krytyczny: przekroczono maksymalny czas wykonywania 300 sekund

który został naprawiony poprzez proste ustawienie w xampp / phpmyadmin / libraries / config.default.php

config.default.php

$cfg['ExecTimeLimit'] = 0;

Ustawienie wartości 0 wyłącza limity czasu wykonywania.

Po chwili import przebiegł bez problemów.

Tiago Martins Peres 李大仁
źródło
3

Udało mi się to rozwiązać, wykonując kroki zamieszczone tutaj: xampp phpmyadmin, Nieprawidłowy parametr formatu

Ponieważ nie używam XAMPP, musiałem również zaktualizować mój, php.ini.defaultdo php.iniktórego w końcu się udało.

Chantel Gonzales
źródło
3

Bez żadnych problemów zaimportowałem bezpośrednio z wiersza poleceń.

mysql -uroot -hURLServer -p DBName< filename.sql
Kairat Koibagarov
źródło
2

Ten błąd jest spowodowany faktem, że maksymalny rozmiar wysyłania to (Max: 2048 KB). Jeśli plik jest większy niż ten, pojawi się błąd. Spakuj plik i prześlij go ponownie, nie otrzymasz błędu.

to240
źródło
2

Jeśli używasz docker-compose, po prostu ustaw UPLOAD_LIMIT

phpmyadmin:
    image: phpmyadmin/phpmyadmin
    environment:
        UPLOAD_LIMIT: 1G
Eugene
źródło
2

Uwaga: jeśli używasz MAMP, MUSISZ edytować plik za pomocą wbudowanego edytora.

Wybierz PHP w sekcji języków (kolumna menu LH) Następnie w głównym panelu obok listy rozwijanej wersji domyślnej kliknij małą strzałkę skierowaną w prawo. Spowoduje to uruchomienie php.inipliku za pomocą edytora tekstu MAMP. Wszelkie zmiany wprowadzone w tym pliku zostaną zachowane po ponownym uruchomieniu serwerów.

Edycja pliku Application->MAMP->bin->php->{choosen the version}->php.ininie zadziała. Ponieważ aplikacja nadpisuje wszelkie wprowadzone zmiany.

Nie trzeba dodawać: „Oto smoki!” więc wytnij i wklej kopię oryginału i przechowuj ją w bezpiecznym miejscu na wypadek katastrofy.wprowadź opis obrazu tutaj

user432350
źródło
1

Wystąpił ten błąd, a ponieważ korzystam z hostingu współdzielonego, nie mam dostępu do php.ini, więc nie byłem pewien, jak mogę to naprawić, host również nie miał pojęcia. W końcu opróżniłem pamięć podręczną przeglądarki i ponownie załadowałem phpmyadmin i wróciło!

Helen Lee
źródło
0

Miałem ten problem, ale z kontenerem docker (użytkownicy phpmyadmin),

Rozwiązanie:

  • Wejdź do kontenera phpmyadmin docker exec -it idcontainer /bin/bash
  • Ruszaj się cd /usr/local/etc/php/
  • Utwórz php.iniplik
  • Zmodyfikuj to upload_max_filesize=128M post_max_size=128M max_execution_time=1000
  • Zapisz i uruchom ponownie kontener.

Ten problem wystąpił na komputerze z systemem Windows, w systemie Linux nie musiałem tego robić.

Schwarz54
źródło
0

Jeśli wolisz edytować plik php.iniw swoim ulubionym edytorze niż w edytorze stworzonym przez MAMP, musisz najpierw zatrzymać serwery.

Następnie udaj się Library->Application Support->appsolute->MAMP PRO->templates->php{version_number}.ini.tempi wprowadź dowolną zmianę, którą chcesz wprowadzić, szczególnie poniżej

max_execution_time = 3000
max_input_time = 60
memory_limit = 128M
post_max_size = 256M
upload_max_filesize 256M

A także wprowadź zmiany w swoim PHPMyAdmin, jeśli tego właśnie używasz w Cpanel.

$cfg['ExecTimeLimit'] = 300;

Upewnij się, że wykonałeś kopię oryginalnego pliku . Możesz przejść pod conf! Tutaj

wprowadź opis obrazu tutaj

pensebien
źródło
-1

Żadna z powyższych odpowiedzi nie rozwiązała tego za mnie.

Nie mogę nawet znaleźć folderu „biblioteki” w moim xampp - również ubuntu.

Po prostu uruchomiłem ponownie, używając następujących poleceń:

sudo service apache2 restart

i

sudo service mysql restart

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

Dzięki mi .. !!

Deepak Keynes
źródło