On Wed, May 02, 2001 at 02:38:19PM -0700, Florin Andrei wrote:
> Dar ce zici de ideea asta: cite o baza de date pentru fiecare syslog
> (deci pentru fiecare host), toate hosturile loggeaza in tabela "current"
> (din db-ul corespunzator), iar la ora 0:00 se executa urmatoarea
> jmekerie (exemplul este fictiv si neeficient, ideea conteaza):
>
> $date=`/bin/date -d yesterday +%Y_%m_%d`;
> $query = "CREATE TABLE new_table (sdate date, stime time, \
> shost varchar(128), smsg text); RENAME TABLE current \
> TO " . $date . ", new_table TO current;";
> $err = `/bin/echo "$query" | /usr/bin/mysql -u $user -p$pass -D $user`;
>
> Pe romaneste: creeaza un tabel nou, si inlocuieste atomic tabelul curent
> cu tabelul nou, vechiul tabel fiind redenumit in ceva care seamana cu
> data zilei precedente.
Asta nu te ajuta daca ai o chila de inregistrari in fiecare zi (ai putea
sa schimbi mai des tabelele dar dupa aia faci query pe nshpe mii de
tabele si nu prea are sens).
Ma refeream la reorganizarea astfel incat sa-i optimizeze aplicatia *lui*.
De exemplu sa faca split la campurile din syslog, sa faca indecsi peste
coloana care dureaza mult sa faca select distinct, sa normalizeze schema
bazei de date, etc, etc, etc.
--
Petru Paler, mailto:[EMAIL PROTECTED]
http://www.ppetru.net - ICQ: 41817235
---
Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to
unsubscribe from this list.