Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: MySQL - PDO - Upload 100MB do Blob
Forum PHP.pl > Forum > Bazy danych > MySQL
seba22
Witam,

Jak podejrzeć jaki błąd serwuje mysql w tym zapytaniu.


  1. $b=$dbh->prepare("INSERT INTO xxx (orginal) VALUES (:orginal)");
  2. $zakodowany=base64_encode(file_get_contents($plik));
  3. $b->bindParam(":orginal",$zakodowany);
  4. $b->execute();
  5.  



Przy plikach większych niż naście MB kończy się niepowodzeniem jednak nie serwuje mi komunikatu o błędzie.

PHP wykonuje się poprawnie, gubi po prostu to zapytanie.
Podejrzewam że wina limitu w MySQL.

Ustawiłem mu max-packet na 150 MB, ale zrobiłem tylko reload konfiguracji... ale nie pomogło.
Dalej gubi zapytanie... gdybym znał odpowiedz MySQL-a to bym to naprawił...

Ktoś wie czy przy zmianie tego parametru ->max packet<- muszę wykonać pełny restart usługi ? (serwer produkcyjny).


pozdrawiam
darko
Info o błędach serwują metody errorCode() i errorInfo()
  1. // Po
  2. $b->execute();
  3. // daj:
  4. print_r($b->errorInfo());
  5. print_r($b->errorCode());
seba22
Dziękuję serdecznie winksmiley.jpg


Odnośnie wyniku to "Ha ha ha" - szyderczy śmiech roznoszący się echem po serwerowni...

  1. Array ( [0] => 08S01 [1] => 1153 [2] => Got a packet bigger than 'max_allowed_packet' bytes ) 08S01


Wiedziałem że max_paket...
Wreszcie będę mógł spokojnie z uzasadnieniem zrestartować serwer ^^


Jeszcze raz danke smile.gif
Mchl
A tak próbowałeś?

Kod
SET GLOBAL max_allowed_packet=128*1024*1024; --128MB
SHOW GLOBAL VARIABLES LIKE 'max_allowed_packet';
seba22
Zrobiłem to ale inną metodą.

Ja akuratnie wy-edytowałem my.conf a potem oczywiście reboot winksmiley.jpg
Działa pięknie...
Mchl
Jakbyś w przyszłości chciał uniknąć rebootu, to próbuj jak wyżej.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.