Mikä oli se funktio (ja miten sitä käytettiin?) millä optimointiin tietokantoja?
En saa millään päähäni, mutta muistikuva on että joku optimizer tms. mutta en tuolla löytänyt googlesta kyllä mitään järkevää...
En saa millään päähäni, mutta muistikuva on että joku optimizer tms. mutta en tuolla löytänyt googlesta kyllä mitään järkevää...
Vastaukset 8
Vanhimmat
Tarkoittanet varmaankin http://dev.mysql.com/doc/refman/5.0/en/optimize-table.html Tuo kannattaa suorittaa säännöllisesti.
Tosin varsinainen taulujen optimointi pitää sitten tehdä käsin, siis indeksien luonti, taulujen suunnittelu jne...
Kannattaa vilkasta myös http://dev.mysql.com/doc/refman/5.0/en/explain.html sekä http://dev.mysql.com/doc/refman/4.1/en/procedure-analyse.html noiden avulla optimointi helpottuu.
Joo eli siis varmaankin esim. tälleen tuo tyhjän tilan optimointi menee:
$sql = mysql_query("OPTIMIZE TABLE kirjat");
mutta miten saan tuon tulostamaan mitä se teki?
esim. echo $sql; ?
Eikös se onnistu ihan samalla tavalla kuin norm SELECT kyselyjen vastauksen tulostus?
Juu itse käyttelen lähinnä phpMyAdminin kautta tuommosia kyselyitä. http://www.phpmyadmin.net/
oon itse normaalin SELECT kyselyn tulostanu aina seuraavasti:
while ($row = mysql_fetch_array($sql))
{
echo $row
}
mutta tuo ei ainakaan minulla tulostanut mitään muuta kuin Array.
Mites tuo phpMyAdmin, voinko asentaa sen palvelimelle itse vai pitääkö se tulla palveluntarjoajan mukana? Siis jos mulla on sivut www.minunsivut.fi eikä siis omalla koneella mitään apache php mysql phpMyAdmin viritelmää?
Jos sen sijaan en vedä tuota while lausetta vaan tulostan suoraan echo $sql;
niin tulostus on seuraavanlainen:
Resource id #3
tuokaan ei varmasti ole se, mitä tuolta pitäisi
tulostua :)
osaisiko joku siis sanoa, miten tuon optimoinnin suorittaisi php-skriptissä ilman mitään phpMyAdminia...
Juurikin noin pitäisi toimia, joskin sulla on tuossa pieni virhe.
echo $row;
Tulostaa tietenkin array koska se on taulukko.
echo $row[0]; tuollee tulostaa ekan alkion.
Ja kannattaa kokeilla
print_r($row); niin näät mitä tuolla taulukossa on.
Tarkoittaako tuo sitä nyt sitten, että optimointi onnistui? Tuollaista kun oli se taulukon sisältö...:
Array ( [0] => username.kirja [Table] => username.kirja [1] => optimize [Op] => optimize [2] => status [Msg_type] => status [3] => Table is already up to date [Msg_text] => Table is already up to date )
Tuo tartkoittaa että taulusi on jo optimoitu joten mitään ei tehty, tuo ilmoitus tulee esim jos suoritat kaks kertaa peräkkäin optimoinnin.
Table is already up to date = Taulu on jo ajanmukainen