Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Limitiranje izvrsavanja query-ja?

[es] :: MySQL :: Limitiranje izvrsavanja query-ja?

[ Pregleda: 3770 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

zobi_cale
Zoran Bodiroga
Beograd

Član broj: 19309
Poruke: 2
*.sbb.co.yu



Profil

icon Limitiranje izvrsavanja query-ja?27.02.2004. u 22:07 - pre 221 meseci
Imam potrebu da na neki nacin ogranicim vreme za izrsavanje query-ja. Tj. hteo bi ako moze nekako da se setuje u MySQL-u da podesim npr. da je maksimalno vreme za izvrsavanje query-ja npr: 5 minuta i ako za to vreme ne zavrsi da ubije proces. Da li je to moguce?

Hvala.
 
Odgovor na temu

cvele

Član broj: 748
Poruke: 20
*.ptt.yu



Profil

icon Re: Limitiranje izvrsavanja query-ja?29.02.2004. u 13:23 - pre 221 meseci
Nisam siguran da postoji podesavanje u mysql-u, ali mozes da probas da na pocetku scripta ispitas trajanje svih processa i ako je time>3000 ubijes ga.

$result = mysql_query("SHOW FULL PROCESSLIST");
while ($row=mysql_fetch_array($result)) {
$process_id=$row["Id"];
if ($row["Time"] > 3000) {
$sql="KILL $process_id";
mysql_query($sql);
}
}

http://www.mysql.com/doc/en/KILL.html


 
Odgovor na temu

zobi_cale
Zoran Bodiroga
Beograd

Član broj: 19309
Poruke: 2
*.sbb.co.yu



Profil

icon Re: Limitiranje izvrsavanja query-ja?29.02.2004. u 19:47 - pre 221 meseci
Citat:
cvele:
Nisam siguran da postoji podesavanje u mysql-u, ali mozes da probas da na pocetku scripta ispitas trajanje svih processa i ako je time>3000 ubijes ga.



Dobra ideja, samo sto bi onda stavio da mi se ta scripta izvrsi na svakih npr: 1 minut pa da ubije proces koji dugo traje.

Nisam mozda bas detaljno izneo problem ali evo malo opsirniji opis:

Imam jednu web aplikaciju koju sam radio u PHP-u i koju koristi negde oko 100 korisnika i to sve fino radi. Medjutim ima korisnika koji pristupaju MySQL bazi preko trugih klijenata (npr: EXCEL, ACCESS, ima jedno programce u VB-u, itd.). Glavni problem je sto nekome nekad padne napamet i da da se izvuku neke statistike za poslednjih godinu i vise dana (u toj jednoj tabeli trenutno ima oko 1800000 redova sa 57 kolona). To i nije neki problem kada se desi pred kraj radnog vremena jer ostali su sve zavrsili pa nema problema ali to se desava i u toku radnog vremena pa mi je potrebno nekako da ako neko posalje takav upit koji ce na duze vreme smoriti masinu da ga jednostavno prekine.

Hvala u svakom slucaju, ako mi neko ne predlozi bolje resenje iskoristicu ovo.

Pozdrav.
 
Odgovor na temu

_owl_

Član broj: 318
Poruke: 1043
*.verat.net



+3 Profil

icon Re: Limitiranje izvrsavanja query-ja?29.02.2004. u 21:41 - pre 221 meseci
Pa mozda bi te statistike mogao da prebacis na drugu masinu ili da rezultate tih upita kesiras (rezultat upita prebacis u posebnu tabelu -- simuliranje view-a)??
Elem nema elegantnog resenja u PHP-u za tvoj problem, meni na pamet pada samo jedno resenje:
Kada se pozove problematicni skript ti pre upita ka bazi pokrenes jos jedan u pozadini (preko fopen(), system() ili cega vec). Taj drugi skript treba da saceka 5 minuta i da proveri da li se i dalje izvrsava upit ka bazi (mada ovo spada u veoma "prljavo" resenje).
Owl
 
Odgovor na temu

[es] :: MySQL :: Limitiranje izvrsavanja query-ja?

[ Pregleda: 3770 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.