MySQL - Max_allowed_packet nastavení

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Dosero
Level 1.5
Level 1.5
Příspěvky: 100
Registrován: 15 kvě 2014 23:15

MySQL - Max_allowed_packet nastavení

Příspěvek od Dosero »

Dobrý večer,
moc bych byl vděčný za radu od kohokoliv, kdo se vyzná v php a mysql.
Mám zakoupený balíček doména + hosting + MySQL databáze u společnosti Forpsi. Narazil jsem na problém, který mi nedovoluje odeslat na databázi přes INSERT jakýkoliv větší text. Menší (počet znaků) se odesílá bez problémů. V databázi mám sloupec označený jako longtext, takže s tím by problém být neměl. Na internetu jsem našel, že je to v nastavení max_allowed_packet. Musí se zvětšit hodnota. V phpmyadmin je pouze 67 108 864. Problém je, že zde ta hodnota změnit nelze - je pouze informativní.

Prosím, kde můžu najít nějaký konfigurační soubor k mysql, popřípadě co tam mám napsat, aby se to zvětšilo. Prohledával jsem ty složky, ale všude je omezený přístup nebo je ta složka prázdná. Popřípadě, jestli ho musím nějak založit? V tomhle se opravdu nevyznám.

Moc děkuji za odpovědi
HP ENVY 15-j000ec : Intel Core i7 4702MQ (Haswell), 2GB nVidia GeForce GT 750M, 15,6" FullHD, 8GB DDR3, HDD 1TB + SSD 24GB, Beats Audio 4.2
Genome
Level 2.5
Level 2.5
Příspěvky: 328
Registrován: 18 kvě 2014 02:45

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od Genome »

Především nerozumím podstatě, o kterou se snažíš, ale to asi není až tak podstatné. Alespoň by to mohlo být zajímavé. Upřímně pochybuji, že by někdo dovolil jen tak měnit nastavení v plném rozsahu MySQL, PHP nebo Apache samotného pro program webhosting. Není k tomu důvod a to se dělá až u opravdu specifických případů a používají se VPSka, kde si klient může nastavit vše potřebné. Jaké jsou omezení a možnosti sdělí podpora Forpsi.
Dosero
Level 1.5
Level 1.5
Příspěvky: 100
Registrován: 15 kvě 2014 23:15

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od Dosero »

Dobře, upřesním svůj problém.
Příklad: Odesílání textu z formuláře do databáze funguje v případě, že má text například 10 000 znaků, jakmile má ovšem text třeba 12 000 znaků obsah formuláře se neodešle. Sloupec do kterého se to ukládá je nastaven na longtext. Kdyby tam na text nebylo místo - uložila by se alespoň část na kterou místo je. Na internetu jsem našel, že je to v nastavení komunikace mezi serverem a mysql (max_allowed_packet) který nastavuje, kolik se toho muže do db odeslat najednou. Určitě vím, že to změnit jde, ale nevím jak? Vše běží na tom forpsi pod linuxem.
HP ENVY 15-j000ec : Intel Core i7 4702MQ (Haswell), 2GB nVidia GeForce GT 750M, 15,6" FullHD, 8GB DDR3, HDD 1TB + SSD 24GB, Beats Audio 4.2
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od CZechBoY »

Co tam sakra odesíláš?! 67MB ti musíš stačit, ikdybys posílal celou knihu jednim sql dotazem.
Zkus tam hodit medium text nebo něco menšího. Možná bude problém v tom datovém typu.

To nastavení nezměníš, máš hosting a tam nic měnit nemůžeš.
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Dosero
Level 1.5
Level 1.5
Příspěvky: 100
Registrován: 15 kvě 2014 23:15

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od Dosero »

Dobře zkusím a dám vědět. :-)

--- Doplnění předchozího příspěvku (24 Čer 2014 11:43) ---

Tak změna na mediumtext nepomohla. Jinak posílá se normální text... respektive html kód... -> Zkoumám to konkrétněji a vidím tu hranici něco kolem 60 řádků. Jakmile to má pod 60 je to úspěšné, jakmile více - nahlásí to úspěch, ale data se neaktualizují.
HP ENVY 15-j000ec : Intel Core i7 4702MQ (Haswell), 2GB nVidia GeForce GT 750M, 15,6" FullHD, 8GB DDR3, HDD 1TB + SSD 24GB, Beats Audio 4.2
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od CZechBoY »

To je fakt divný...
Když ten stejnej text (co nejde) vložíš přes phpmyadmin tak to jde?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Dosero
Level 1.5
Level 1.5
Příspěvky: 100
Registrován: 15 kvě 2014 23:15

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od Dosero »

Jojo v myadminu to jde. Právě proto jsem si myslel, že je to problém v nastavení velikosti odesílaných dat. :-(
HP ENVY 15-j000ec : Intel Core i7 4702MQ (Haswell), 2GB nVidia GeForce GT 750M, 15,6" FullHD, 8GB DDR3, HDD 1TB + SSD 24GB, Beats Audio 4.2
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od CZechBoY »

Pokud v adminu to jde tak je problém v příkazu, který posíláš.
Pošli sem aspoň php verzi toho co posíláš.
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Dosero
Level 1.5
Level 1.5
Příspěvky: 100
Registrován: 15 kvě 2014 23:15

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od Dosero »

Pošlu kód updatu, protože ten mě trápí víc. S vkládáním bych to snad ještě nějak obešel, ale ten update je problém...

Kód: Vybrat vše

if(isset($_POST['body'])){
mysql_query("UPDATE `Stranky` SET `nadpis` = '$_POST[nadpis]', `body` = '$_POST[body]'  WHERE `nazev` = '$name'");
mysql_query($sql);
}
HP ENVY 15-j000ec : Intel Core i7 4702MQ (Haswell), 2GB nVidia GeForce GT 750M, 15,6" FullHD, 8GB DDR3, HDD 1TB + SSD 24GB, Beats Audio 4.2
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od CZechBoY »

To je nějaký celý divný...

Kód: Vybrat vše

if(!empty($_POST['body'])){
   mysql_query("UPDATE `Stranky` SET `nadpis` = '" . mysql_real_escape_string($_POST['nadpis']) . "', `body` = '" . mysql_real_escape_string($_POST['body']) . "' WHERE `nazev` = '$name'");
}
 
Takhle by to mělo být OK.
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Dosero
Level 1.5
Level 1.5
Příspěvky: 100
Registrován: 15 kvě 2014 23:15

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od Dosero »

Děkuju, zkusím :-)

--- Doplnění předchozího příspěvku (26 Čer 2014 12:57) ---

Hluboce se skláním a děkuji!! :clap:
Funguje to krásně :-)

A pro ten INSERT, který mám takto, to bude podobně?

Kód: Vybrat vše

$sql = "INSERT INTO Stranky (`id`, `nazev`, `nadpis`, `body`) VALUES ('', '$_POST[nazev]' , '$_POST[nadpis]' , '$_POST[body]')";
HP ENVY 15-j000ec : Intel Core i7 4702MQ (Haswell), 2GB nVidia GeForce GT 750M, 15,6" FullHD, 8GB DDR3, HDD 1TB + SSD 24GB, Beats Audio 4.2
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: MySQL - Max_allowed_packet nastavení

Příspěvek od CZechBoY »

Jojo, chce to spojovat stringy a ne to tam cpát takhle nějak zvláštně...

Kód: Vybrat vše

$sql = "INSERT INTO Stranky (`nazev`, `nadpis`, `body`) VALUES ('" . mysql_real_escape_string($_POST['nazev']) . "' , '" . mysql_real_escape_string($_POST['nadpis']) . "' , '" . mysql_real_escape_string($_POST['body']) . "')";
 
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Zamčeno
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Nastavení PC a monitoru na hry
    od Fargotroniac » » v Problémy s hardwarem
    9 Odpovědi
    9601 Zobrazení
    Poslední příspěvek od Fargotroniac
  • Dva routery za sebou nastavení
    od jan l » » v Administrace sítě
    19 Odpovědi
    20670 Zobrazení
    Poslední příspěvek od jan l
  • Unreal Commander - nastavení panelů
    od foto1977 » » v Vše ostatní (sw)
    1 Odpovědi
    8723 Zobrazení
    Poslední příspěvek od Mety
  • Windows 10: obnovení počítače do továrního nastavení
    od Prorock » » v Windows 11, 10, 8...
    4 Odpovědi
    10180 Zobrazení
    Poslední příspěvek od Prorock

Zpět na „Programování a tvorba webu“