Lynx Posted February 4, 2007 Report Posted February 4, 2007 Pētiju webservera mysql statistiku un uzdūros nepatīkamai lietai: Handler_read_rnd un Handler_read_rnd_next uzrādīja nepieklājīgi lielas vērtības. Ar samazināšanu nebūtu problēmu, ja vienīgi es zinātu kuri ir tie queriji, kas lasa nākamo ierakstu vai pareizi neizmanto indexus. Iet cauri 10+ lielākiem, mazākiem projektiem un pārbaudīt katru aizdomīgo pieprasījumu galīgi nav ne vēlēšanas, ne laika. Un loģiski rodas jautājums vai nav kāds veids kā effektīvi atrast vainīgos pieprasījumus. Ne mysql manuāli, ne googlee neko nemin par queriju atrašanu, tikai izlabošanu. Tātad jautājums: vai ir kāds veids kā effektīvi(log faili, pamodificējot db klasi, etc) noteikt kuri queriji ierakstās iekš Handler_read_rnd_next uzskaites.
blackhalt Posted February 4, 2007 Report Posted February 4, 2007 Prasi bubu - viņš štatā. Es slepšos.
bubu Posted February 4, 2007 Report Posted February 4, 2007 Es ko? Nemaz pat i nezinu, kas tas par tdu Handler_read_rnd_next...
Delfins Posted February 4, 2007 Report Posted February 4, 2007 Kā pēdējais variants iziet cauri visiem projektiem un salasīt visus SQL. Vai arī pārrakstīt, izmantojot query f-jas wraperi. my_query($sql) { mysql_query } [norepleisot iekš failiem stringu "mysql_query" ar "my_query"]
Roze Posted February 4, 2007 Report Posted February 4, 2007 Un loģiski rodas jautājums vai nav kāds veids kā effektīvi atrast vainīgos pieprasījumus. Ne mysql manuāli, ne googlee neko nemin par queriju atrašanu, tikai izlabošanu. In MySQL 5.0, queries that do not use indexes are logged in the slow query log if the --log-queries-not-using-indexes option is specified. http://dev.mysql.com/doc/refman/5.0/en/slow-query-log.html
Recommended Posts