sql—为什么mysql会无缘无故地回滚数据?

0sgqnhkj  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(1060)

在windows操作系统的笔记本电脑等不同硬件中多次使用mysql服务器之后,在非常罕见的情况下,数据会回滚到以前的事务。该算法在上千个不同客户端的事务中运行良好,但在0.01%的情况下关闭应用程序并释放内存时,最后4或10个事务的数据被回滚。该应用程序是桌面应用程序,使用.net和mysql库以及mariadb 10.2免费版在localhost站开发。如果提交失败,将重试。有没有可能某些事务在出错后部分保存数据,而事务没有很好地关闭??失败提交的原因是什么?或者硬盘故障,或者windows问题??。如果报表数据显示如此提交工作,但在那些情况下关闭应用程序数据回滚???为什么?任何帮助都将不胜感激。

m2xkgtsf

m2xkgtsf1#

看似随机的原因有很多 ROLLBACKs .
在事务中的每个语句之后以及 COMMIT . (提交错误可能只发生在基于galera的集群和组复制中。但无论如何都要测试。)
发生错误时,请尝试捕获 SHOW ENGINE INNODB STATUS; . 打开 innodb_print_all_deadlocks ,然后查看日志。
同时,你能描述一下这笔交易吗?更好的是,向我们展示所涉及的sql。

相关问题