作者回复: 新年快乐🤝
作者回复: 这就是堆组织表的数据存放方式
作者回复: 即使是SSD,顺序写也比随机写快些的。 不过确实没有机械盘那么明显。
作者回复: 嗯,这个也是可以的。不过也会放过其他引擎表的主备不一致的报错哈
作者回复: 你看看能不能把短连接改成长连接
还有,这个语句应该是没用的,看看能不能通过配置框架参数,来避免执行这个语句
作者回复: 是,如我们文中说的,不建议使用普通内存表了哈
作者回复: 1. 取决于对临时表的访问模式哦,如果是需要用到索引查找,还是要创建的。如果创建的临时表只是用于全表扫描,就可以不创建索引;
2. 是的,如果明确要用范围查找,就得创建b-tree索引
作者回复: 1&2 查询information_schema.tables的时候,会把所有的表都访问到一次,这里不止是4w个表,而是这个实例上所有的表,也就是10万
3. 因为系统一般设置的table_definition_cache 都不会太大,你要打开10万张表,就只能轮流打开,然后轮流从table_definition_cache里面淘汰。这样就跟其他查询在table_definition_cache这个结构里出现了互相等待资源的情况。
嗯,这个其实就是我不建议用界面工具的原因之一
不好意思,你这个问题这么迟才回复你😆
作者回复: 对
作者回复: 这种情况最适合源码入坑😄
你有两个可以稳定复现的对比场景,而且单线程就能复现。
这两天我用电脑不方便,下周末来给出答案哈。
你可否把5.6/5.7这个对照试验组,包括实验过程和结果差异,再单独写一个问题😄
作者回复: 你如果是innodb_stats_on_metadata设置为off的话,第二个语句是不用打开表的。
作者回复: 嗯嗯,联系开发改造是对的😆
作者回复: 因为重启的时候已经执行了delete语句,所以再写入数据的动作也可以保留binlog哈