MySQL tablak atime-ja?!?

Fórumok

Hello!

Azt szeretnem megtudni, hogy az elmult pl. 4 hetben, mely tablakhoz nyultak a query-k. Van erre mod?

Hozzászólások

Talan probald meg ez alapjan:
http://dev.mysql.com/doc/refman/5.1/en/show-table-status.html
Ahogy neztem MyISAM alapu tablaknal ezt le tudod kerni vele (windows szerver eseten nem ad helyes erteket)


Update_time

When the data file was last updated. For some storage engines, this value is NULL. 
For example, InnoDB stores multiple tables in its tablespace and the data file timestamp does not apply. 
For MyISAM, the data file timestamp is used; however, on Windows the timestamp is not updated by updates so the value is inaccurate.

Most nezem, hogy meg igy sem valoszinu, hogy helyes erteket fog viszaadni, mivel az adatfile modositasi datumat veszi alapul es semmi sem garantalja azt, hogy a file csak akor kerul modositasra ha valamien muveletet vegzel a tablan.

Egy masik megoldas lehet, hogy atfesulod a log-ot, ehez persze programoznod kell
http://dev.mysql.com/doc/refman/5.0/en/query-log.html

--
UBUNTU 8.10 Rock's!
Type cat /vmlinuz > /dev/audio to hear the Voice of God.

Ilyet a mysql nem logol, a tablak es adatbazisok pedig nem feltetlenul kothetoek pontosan egy-egy filehoz, ugyanis a storage engine jocskan megkeveri a relacios adatbazis valodi reprezentaciojat a diszken. Es akkor meg ott van az idonkenti ujraindexeles vagy akar ujrarendezes.
Esetleg ha be van kapcsolva a query vagy binary log, akkor ott erdemes szetnezni.

Utolso modositast datumat tartalmazo oszlopot viszont hozza lehet adni tablakhoz.

--
The Net is indeed vast and infinite...
http://gablog.eu

Vigyazzatok vele, hatha valami azert epit a tabla megletere. Ugyanis attol, hogy tenyleges lekerdezes nem iranyul a tablara, attol a metainfoi meg elkerhetok hozzaeres nelkul - jo esellyel a mysql cacheli az ilyent.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

a helyedben bekapcsolnam a query log-ot/binlogot(konnyu beloni, de erezheto performance penalty), vagy logolnam/sniffelnem a halozati forgalmat, a tcp forgalom sniffelesebol viszonylag konnyen ki lehet greppelni a query-ket, es ez a sniffer futhat masik gepen, emiatt meg csak nincs is overheadje a mysqld-t futtato vason.

Tyrael

1napnal rovidebb ideje modositott tablak listaja:

SELECT CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) as 'table', UPDATE_TIME as last_update FROM information_schema.TABLES
WHERE
TABLE_SCHEMA NOT IN ('information_schema', 'mysql')
AND
DATE_SUB(CURDATE(),INTERVAL 1 DAY) <= UPDATE_TIME;

Tyrael

ooo a budos fitty fenebe. szoval nincs kifejezetten megoldas erre, szoval lehet sniffelem majd a gepet.

amugy koszonom szepen a hozzaszolasokat!