[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux_var] mysql



nextime@nexlab.it ha scritto:
On Tue, Nov 27, 2007 at 07:29:48PM +0100, JohnnyRun wrote:
Mi succede una cosa strana,
uso mysql senza pretese, 4 tabelle e via,
ma si da il caso che una dagli dati oggi, dagli domani e' bella grossina.
Quantifica. Grosso ? un p? relativo

Per quanto grossa sia, non e' certo quella la causa primaria del problema.
Inoltre mysql e' comunque in grado di gestire tabelle *MOLTO* grandi.
Personalmente ho un mailserver che appoggia tutte le "mailbox" su mysql, ho tabelle da circa 40 GB di dati con miliardi di record, e tutto
funziona a meraviglia e velocemente.
DROP TABLE IF EXISTS 'nome_tablella1';
CREATE TABLE 'nome_tablella1'; (
elenco di tutti i campi
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
ALTER TABLE 'nome_tablella1'; DISABLE KEYS;
INSERT INTO 'nome_tablella1' VALUES (blabla bla tutti i vecchi dati...)
ALTER TABLE 'nome_tablella1'; ENABLE KEYS;

DROP TABLE IF EXISTS 'nome_tablella2';

Be', mi sembra chiaro chi ha cancellato la tabella

....
e cosi via per tutte le tabelle.
Siccome stamattina abbiamo dovuto fare un reboot e' probabile che sia
capitato nel mentre faceva questa operazione.

Direi che e' una giusta osservazione. Se tagli una operazione simile nel bel mezzo mentre lui ripopola una
tabella, chiaramente te la troverai tagliata.

Il punto e' chi ha lanciato quello script?

Debian, per esempio, in /etc/mysql/debian-start fa:

echo "Checking for corrupt, not cleanly closed and upgrade needing tables."
(
  upgrade_system_tables_if_necessary;
  check_root_accounts;
  check_for_crashed_tables;
) >&2 &

In questo check, o in un'altro periodico potrebbe trovare una tabella
corrotta e cerca di rimetterla in piedi da zero.

Brrr... se chi ha fatto i pacchetti di mysql avesse introdotto una cosa
simile, sarebbe da *UCCIDERE* con impalazione anale nel centro della
mecca durante il ramadam, scrivendogli in fronte "maometto scemo" per
vedere la reazione dei musulmani.

Di norma gli script di mantenimento si limitano a tentare operazioni
come il REPAIR TABLE e se proprio non riescono a risolvere piuttosto
lanciano dei fuochi d'artificio vari per avvisarti che il mondo sta
finendo a causa di un asteroide.

Ritengo piu' probabile un cronjob esterno a mysql in se' fatto da
qualche scimmia che dovrebbe andare a fare qualche lavoro miserabile.
Forse come politico in italia potrebbe avere un futuro considerando la
media dei nostri politicanti. Non ho trovato nessun altro esempio di
lavoro cosi' degradato da poter insultare.

Tu rebooti nel bel mezzo dell'operazione e perdi la tabella.
Solo che c'? da chiedersi: hai avuto la tabella corrotta?
I log dovrebbero dirtelo.

Gia', qui Johnny ha perfettamente ragione, lurka di piu' nei log!


Vi ringrazio.
Intanto sono soddisfatto perche' ho visto giusto, ovvero, non e' una cosa normale che vengano eliminate le tabelle e poi ripopolate (dove li prende i dati?)
Per quanto riguarda gli eventuali bug ho fatto un aggiornamento e speriamo.
Per quanto riguarda i log invece aime'... e' una mia immensa pecca,
ho scoperto intanto mysqlbinlog che e' utilissimo
ma quando parliamo di log prodotti dal sistema vado proprio in palta
messages e syslog mi sembrano uguali,
non conosco le loro competenze e come implementare o rimuovere segnalazioni... (un disastro) mi sarebbe utile un bel how-to log :-D (nonche' un buon software per analizzarli questi log :-D )

Per ora di nuovo grazie mille :)


--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Scopri il segreto del successo con Ticket Compliments! Vinci una FIAT 500 e 1 Ticket Compliments del valore di 25? cad. al giorno!
* Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7270&d=29-11

 (--- * * * * * * * * * * * * * * * * * * * * * * ---)
Per cancellare l'iscrizione: <talking-unsubscribe at ml.linuxvar.it>
Interfaccia web di configurazione: http://ml.linuxvar.it/ml/