Zadejte hledaný výraz...

Mysql query rychlá přes phpmyadmin, pomalá v php skriptu

Petr Vacek
verified
rating uzivatele
24. 4. 2010 01:14:19
u velkých dotazů hodně záleží po kolikáté dotaz běží a jestli ho má ještě databáze v cache, případně jak ji u toho vytěžuješ. Doporučil bych ti udělat si z toho pohled. Tam by jsi možná ušetřil nějaký čas.
24. 4. 2010 01:14:19
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495070
d.zosincuk
verified
rating uzivatele
24. 4. 2010 21:29:28
No tam není problém v tom dotazu. Ten je zpracovaný rychle. Je tam pak problém, když ten výsledek z mysql chci převést do pole a následně ho využít ve smarty šabloně.
Proměnná $result je prázdná. Je to pomalé ať to má jakýkoli název. Nechápu, co může způsobovat tak pomalé plnění pole. Nemáte někdo nějaký nápad? Problém s konfigurací php?
24. 4. 2010 21:29:28
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495069
Switch
verified
rating uzivatele
(7 hodnocení)
25. 4. 2010 18:11:44
Dej sem kod + cely dotaz. Takhle to je strileni do vzduchu.
25. 4. 2010 18:11:44
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495068
d.zosincuk
verified
rating uzivatele
26. 4. 2010 10:12:15
Dotaz není podstatný. Je dlouhý, několik joinů. Ale samotný dotaz je vyřízen rychle.
mysql_connect("server", "user", "pass");
mysql_select_db("db");
$vysledek=mysql_query($query);
while ($row = mysql_fetch_array($vysledek, MYSQL_ASSOC)) {
//$result[] = $row;
}
tenhle kus kodu, se zakomentovanym naplnenim pole, probehne ze 0.1sekund
mysql_connect("server", "user", "pass");
mysql_select_db("db");
$vysledek=mysql_query($query);
while ($row = mysql_fetch_array($vysledek, MYSQL_ASSOC)) {
$result[] = $row;
}
Stejny kod, jen vystup z mysql chci naplnit do pole probehne za 5 sekund. To je muj problem. Jeste zopakuji, ze vystup pole ma nejakych 8 sloupcu a 20 radku. Taze zadne obri pole. Promena $result je prazdna.
26. 4. 2010 10:12:15
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495067
hm
verified
rating uzivatele
(20 hodnocení)
27. 4. 2010 15:10:29
Napsal d.zosincuk;502579
Dotaz není podstatný. Je dlouhý, několik joinů. Ale samotný dotaz je vyřízen rychle.
Stejny kod, jen vystup z mysql chci naplnit do pole probehne za 5 sekund. To je muj problem. Jeste zopakuji, ze vystup pole ma nejakych 8 sloupcu a 20 radku. Taze zadne obri pole. Promena $result je prazdna.
bohuzel dotaz ej taky dulezity abychom si dokazali predstavit co v tabulkach a vyslednem poli asi je a neni... me treba to co pises s normalnim dotazem v poradku funguje
27. 4. 2010 15:10:29
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495066
duben
verified
rating uzivatele
(49 hodnocení)
27. 4. 2010 17:34:48
1. Zkusil jsi místo toho svého "nedůležitého" dotazu dát třeba SELECT 1 FROM nejaka_tabulka ... pojede to porad stejne pomalu nebo je to ve vteřině?
2. Jsi si jistý, že to vázne tady v tom kódu?
3. Běží PHPAdmin ze stejného serveru jako tvé PHP? Jestli děláš JOIN mezi tolika tabulkami, tak je problém třeba v tom, že se tahá spousta nepotřebných dat mezi DB serverem a web serverem.
Bez ukázky kódu ti tu těžko někdo poradí něco kloudného. Pokud chceš radu ukaž kód. Pokud si myslíš, že je ten kód tak geniální, že by ti to tu někdo vykradl, tak si řekni někomu soukromě ať se ti na to podívá, ale těžko počítat s tím, že pak bude někdo radit zadarmo.
Btw. uvědomuješ si, že čím míň ukážeš a řekneš o problému, tím víc plýtváš časem lidí co se ti tu snaží pomoct?
27. 4. 2010 17:34:48
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495065
v plneni chyba nebude - protoze php defaultne vsechny mysql dotazy bufferuje - tzn. celej result stejne nacte do pole... chyba bude jinde, zrejme v te casti se smarty - tipoval bych, ze tam mas nekde nejakou podminku na to, jestli to pole neni prazdne a pokud neni, tak se spusti nejakej zbesilej render a tim se to zaseka
btw: pokud bys nechtel bufferovat pouzij mysql_unbuffered_query - pouziva se to pri opravdu obrovskych selectech, ktere by se nevlezly do pameti a php by muselo swapovat (pokud by nezdechlo, zejo)
- pripadne by neprekrocilo memory_limit - coz je skoro to same jako kdyby zdechlo :-)
4. 5. 2010 11:35:13
https://webtrh.cz/diskuse/mysql-query-rychla-pres-phpmyadmin-pomala-v-php-skriptu/strana/2#reply495064
Pro odpověď se přihlašte.
Přihlásit