Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A sessão do MySQL Workbench não vê atualizações no banco de dados


Esta é uma pergunta antiga, mas ainda tenho o mesmo bug.OP mencionou um bug aberto no MySQL Workbench em outro thread (http://bugs.mysql.com/bug.php?id=69800 ).

De acordo com doc (https ://dev.mysql.com/doc/refman/5.7/en/innodb-transaction-isolation-levels.html#isolevel_repeatable-read ), o nível de isolamento padrão é REPEATABLE-READ.

Isso significa que um instantâneo do banco de dados é feito na PRIMEIRA leitura da transação. Cada outra leitura desta transação mostrará os dados do instantâneo.

Portanto, você precisa encerrar a transação (confirmar ou reverter) para obter um novo instantâneo na próxima leitura.

Meus colegas que definiram o MySQL Workbench no AutoCommit não veem o comportamento de leitura repetível. Descobrimos que é porque após cada SELECT, a transação é fechada e um novo snapshot é criado.

Então, como o bug ainda não foi corrigido, uma solução alternativa seria:
  • mudar para confirmação automática para que novos instantâneos sejam criados automaticamente
  • ou commit/rollback após cada SELECT para criar um novo snapshot