本文主要介绍“如何解决Mysql执行count时的脏读问题”。在日常操作中,我相信很多人对于如何解决Mysql执行count中的脏读问题有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮你解答“如何解决Mysql执行count中的脏读问题”的疑惑!接下来,请和边肖一起学习!
[问题的详细描述]
红杉
未结交易,交易级别为
驻地协调员,在
关系型数据库
执行
数数
发生脏读,具体操作如下:
1.打开事务,隔离级别为
驻地协调员;
2.履行
从x1中选择计数(*)
获得的记录数量;
3.再次插入记录;
4.再次执行步骤2;
发现
数数
返回新插入的记录数,存在脏读问题。
详见附件。
mysql-1/2/3/4.png
[解决方案]
1.当前版本(v3.2.1)的
快速计数
该机制读起来确实很脏,但只是暂时使用。
数数
没有条件时快速返回结果。
2.现在
快速计数
是的,通过
红杉_优化_选择_计数
参数打开专门优化,可以通过隐藏系统参数:
红杉_优化_选择_计数:bool
切换。
【配置方法】
1.非持续有效模式
mysql设置全局sequoiab _ optimizer _ select _ count=OFF;
重新开始
关系型数据库
参数将恢复为默认值。
ON .
2.坚持的有效方法
修改
数据库/实例/auto.cnf
配置文件,在
[mysqld]
模块配置
sequoiab _ optimizer _ select _ count=off,将在修改后实现。
Bin/sdb_sql_ctl重新启动实例名称
重启实例生效。
【注意事项】
1.过滤条件
从表中选择计数(*),其中.
或者陈述的最初表现,因为
关系型数据库
不会放
数数
按下存储引擎。
2.sdb
关于
计数()
接口直接访问计数器,相当于脏读。用户介意的话是打不开的。
红杉_优化_选择_计数。
3 . sequoiab _ optimizer _ select _ count
该参数为内部隐藏参数,不对外公开,无相关信息。
至此,“如何解决Mysql执行count时的脏读问题”的研究结束,希望能解决大家的疑惑。理论和实践的结合可以帮助你学得更好。去试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/155627.html