Andrea Paolini wrote:
Interessante, ma in nessuna di queste c'è anche lontanamente scritto
che <<nel dump MySQL [...] 5.x _sostituisce_ le viste con un bel
CREATE TABLE e INSERT>>.
Si', mi e' successo. Dump, restore, e quelle che prima erano viste,
diventano tabelle.
Posso immaginare che, per qualche motivo, il programma non abbia potuto
creare le viste, e abbia "ripiegato".
Oppure il client mysqldump, per quanto anch'esso della 5.x, era di una
release precedente.
Oppure era errata la configurazione del server, o che altro.. io li' per
li' ci ho perso un po' di tempo, ma non ho chiarito la natura del problema.
Certo che un messaggio di errore l'avrei gradito.
D'altra parte, se chiedi esplicitamente di creare una tabella InnoDB, e
l'engine innodb non e' linkato/installato, ti crea felicemente la
tabella in MyISAM senza dire nulla.
Qui non si tratta dello specifico heisenbug, ma dell'atteggiamento in
generale. (La stringa non sta in colonna? la si tronca!)
poi, le foreign key "across all of the engines" saranno nella release 6,
Eh sì... è fondamentale avere a disposizione le foreign keys su TUTTI
gli engine (compreso il CSV :-) ).
Insomma... la replicazione e' facile se puoi fregartene di certe cose.
Troppo sforzo usare InnoDB e non rompere le scatole... <eg>
Lo facessero tutti!
Ma no, perche' "poi diventa lento", e "devo inserire un milione di righe
in tre minuti"
P.S: Negli ultimi progetti per i quali ho disegnato l'architettura ho
inserito PostgreSQL come RDBMS, visto che secondo me ad oggi, partendo
da zero, non c'è una buona ragione per non preferirlo a MySQL o - in
molti casi - a Oracle/DB2/MSSQL.
Ho usato postgres dalla 7.3, non era male. Era gia' dieci anni piu' avanti.
Ma sai.. non era disponibile per windows. Questo cambia _tutto_
OTOH chi usa MySQL non è necessariamente un cretino o un incompetente;
possono esserci validissime ragioni per farlo.
Senz'altro, ma ci sono ragioni anche migliori per usare interbase,
sqlite, o db gerarchici quali pytables e nucular.
Penso che se un programmatore non ritiene indispensabili l'integrita'
relazionale, query planner, trigger, SP e tutte le feature che mancavano
(o ancora mancano) a MySQL.. beh, o si tratta di un'applicazione molto,
molto semplice oppure il programmatore, per quanto competente, rischia
di ingabbiarsi nell'ORM-relational divide.
In molti, molti casi MySQL viene usato come un file system, o un db
gerarchico. Tanto vale usare direttamente quelli.
--
This e-mail (and any attachment(s)) is strictly confidential and for use only
by intended recipient(s). Any use, distribution, reproduction or disclosure by
any other person is strictly prohibited. The content of this e-mail does not
constitute a commitment by the Company except where provided for in a written
agreement between this e-mail addressee and the Company.
If you are not an intended recipient(s), please notify the sender promptly and
destroy this message and its attachments without reading or saving it in any
manner.
Any non authorized use of the content of this message constitutes a violation
of the obligation to abstain from learning of the correspondence among other
subjects, except for more serious offence, and exposes the person responsible
to the relevant consequences.
|