Optimizuojam mysql lenteles PHP pagalba
by neworld on Sau.16, 2008, under mysql, Optimizavimas, php
Turbūt retas optimizuojat mysql lenteles. Ko gero viena iš priežasčių yra ta, kad jūs neturi laiko kas dieną prisijunginėti prie mysql ir patiems susi optimizuoti visas lenteles. O optimizuojant sutaupote šiek tiek vietos, šiek tiek spartos.
Kadangi aš nežinau tokios užklausos kuri suoptimizuotų bet kokias lenteles esančias duomenų bazėje tai aš pasirašiau šiokią tokia funkciją:
[code lang="php"]$nuskaitymas = mysql_query(”SHOW TABLES”);
while($table = mysql_fetch_array($nuskaitymas)) {
mysql_query("OPTIMIZE TABLE {$table[0]}");
}[/code]
Šis kodas paima lentelių sąrašą ir visas suoptimizuoja. Aš šį skriptą įtraukiau į crontab’s, ir mano lentelės yra sėkmingai suoptimizuojamos kiekvieną naktį.
P.S. ačiū Evaldui už pastabą
Sausis 16th, 2008 on 19:39:47
Ar kartais nesitiki stebuklų?
http://dev.mysql.com/doc/refman/5.0/en/optimize-table.html
Sausis 16th, 2008 on 20:19:59
Kas naktį? Tai ką tu veiki su tom lentelėm?
Statistika:
Mano darbovietės lentelės užima 1.1Gb. Rodomas overhead’as: 13Mb. Optimizacija tik sutvarko tą overhead’ą ir truputėlį indeksus. Daug efektyviau yra rašyti protingas užklausas su padoria DB struktūra.
Sausis 16th, 2008 on 22:20:05
Nu pas mane duomenų bazė ~30MB, bet overhead’as būna ~1MB, nežinau kodėl, gal kad daug trinu, rašau, keičiu. Šiaip ne tik ta overhead’ą sutvarko, indeksus, išrikiuoja ir pan. Būtinybės nėra, tačiau šioks toks optimizavimas niekam nepakenkė (ypač kai servas tuo metu nebūna užkrautas).
P.S. nesitykėjau kad mano blogą kas nors skaito
Sausis 11th, 2009 on 12:44:30
Nemanai, kad optimaliau būtų naudoti tokį variantą?
$nuskaitymas = mysql_query(“SHOW TABLES”);
while($table = mysql_fetch_array($nuskaitymas)) {
mysql_query(“OPTIMIZE TABLE $table[0]“); }
Sausis 18th, 2009 on 22:02:23
aišku optimaliau ir tvarkingiau. Tiesiog anas skriptas buvo nukopijuotas seniai iš kažkur, perdarytas kad veiktų nesigilinant kaip veikia. Dėkui už pastabą
Balandis 18th, 2009 on 13:54:53
Tai aisku kad tavo blogas skaitomas uzrasai koki nors irasa googleje ir tave ismeta
Balandis 20th, 2009 on 17:15:14
Rimtai taip dažnai?
Balandis 23rd, 2009 on 13:53:52
na nzn as pradejau skaityti geriau man paaiskink kaip man sitas lentutes savo optimizuoti ?
Balandis 23rd, 2009 on 16:52:00
Paleisk šitą skriptą. Kiek žinau tavo projektui kertą per mėnesį užtektų
Balandis 27th, 2009 on 20:43:40
o reikia rasyti ? beje radau kur optimizuoti rankiniu budu tad prisijungiu prie duomenu bazes ir optimizuoju
Balandis 28th, 2009 on 18:07:03
Tai gali ir taip, o aš pasidariau per crontab, kuris kas savaitę pats suoptimizuoja
Gegužė 22nd, 2014 on 20:42:06
levitra 20 – levitra medicament, levitra prix pharmacie