Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: MySQL query time
Forum PHP.pl > Forum > Bazy danych > MySQL
maly_swd
Witam.
Czy jest jakis sposob aby zmusic mysql do ubijania zapytan np po 10sekundach?

Mam czesc zapytan (analiza danych), ktore moga trwac np 1h i w mysql.ini mam ustawiony czas na 2h, ale mam tez zapytana, ktore bym chcial aby mysql ubijal z automatu:)

macie jakis pomysl na to?
Mchl
Z MySQL Query Browser można ręcznie ubijać przeciągające się zapytania, więc najwyraźniej jakiś mechanizm jest. Teraz trzeba poszukać jaki smile.gif

http://forums.mysql.com/read.php?10,111006,111011#msg-111011
maly_swd
Ja tu mowie o serwisie PHP+MYSQL:) wiec ubijanie reczne nie wchodzi w gre:) ani Cronowate..

chodzi mi bardziej o taki patent jak z php set_time_limit(60); i teraz wszystkie zapytania sa na max 60 sek.;D
Mchl
A masz MySQL już ze schedulerem (5.1.6 chyba)? BO wtedy mógłbyś zrobić procedurę składowaną wywoływaną właśnie schedulerem a w niej

SELECT ID FROM information_schema.processlist WHERE time > ?

a potem kursorem przelecieć po wynikach i killować po kolei smile.gif

Nie próbowałem, więc nie wiem czy się da, ale można spróbować
maly_swd
Takie partyzanckie metody odpadaja:)

Najlepiej jak by bylo cos w stylu:
query(zapytanie, czas);

ale i tak dzieki za pomoc, jak nikt innego nie da to masz +winksmiley.jpg
Mchl
No innego pomysłu nie mam. W PHP 5.3 są niby jakieś zapytania asynchroniczne, ale nieudokumentowane w manualu na razie.

A dlaczego uważasz, że metoda ze schedulerem jest 'partyzancka'? O ile MySQL nie zabrania takiej opcji jak killowanie zapytań z procedury składowanej, to powinno bardzo ładnie działać.
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.