Mysql
 sql >> Database >  >> RDS >> Mysql

Perché alcune connessioni mysql selezionano i vecchi dati nel database mysql dopo un'eliminazione + inserimento?

Per impostazione predefinita MySQL è impostato sul livello di isolamento "REPEATABLE READ", il che significa che non vedrai alcuna modifica nella transazione eseguita dopo l'avvio della transazione, anche se quelle (altre) modifiche sono state salvate.

Se emetti un COMMIT o un ROLLBACK in quelle sessioni, dovresti vedere i dati modificati (perché ciò interromperà la transazione "in corso").

L'altra opzione consiste nel modificare il livello di isolamento per quelle sessioni su "READ COMMITTED". Forse c'è un'opzione per cambiare anche il livello predefinito, ma dovresti controllare il manuale per quello.