Serghei Amelian wrote:

Am o baza de date foarte mare in mysql (cam 650.000 de inregistrari, cu foarte multe campuri). Am mai adaugat cateva campuri si m-am apucat umplu campurile alea cu "UPDATE table SET blabla".

Acum am o chestie enervanta, umplerea campurilor noi se face extrem de lent, e ca si cum nu ar fi spatiu pe disc alocat pentru ele si se aloca in momentul ala (activatatea hdd-ului este intensa), si creste enorm memoria alocata pentru "Disk Cache" (stiu ca in mod normal e multa memorie alocata pentru asta, dar acum pur si simplu imi arunca in swap celelalte aplicatii).

Exista vreo posibilitate sa-i spun mysql-ului sa prealoce mai mult spatiu pe disk pentru noile date? Daca fac inca o data update pentru datele deja introduse merge extrem de repede.

Tabele sunt MyISAM? Daca da prea mare lucru nu poti face, eventual sa folosesti CHAR in loc de VARCHAR. Analizeaza posibilitatea de a trece pe storage engine-ul InnoDB care foloseste pentru stocare "tablespaces" si e proiectat pentru cantitati mari de date ( http://dev.mysql.com/doc/refman/4.1/en/innodb-overview.html ). In cazul InnoDB se pot aloca de la inceput anumite blocuri (fisiere data) de dimensiunea dorita. ( http://dev.mysql.com/doc/refman/4.1/en/innodb-configuration.html )

Thanks


_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui