摘要:
myrocks 事务处理 阅读全文
摘要:
概况 rocksdb作为KV存储引擎,那么myrocks记录最终会以kv的形式存储在rocksdb中。MySQL中的表一般由若干索引组成, 在innodb存储引擎中,每个索引对应一颗B树,而在rocksdb存储引擎中,索引对应于rocksdb中一段连续范围的数据。具体来说,这个范围是此索引id和id 阅读全文
摘要:
data dictionary rocksdb作为mysql的一个新的存储引擎,在存储引擎层,会维护自已的元数据信息。在innodb存储引擎中,我们通过information_schema下的INNODB_SYS_DATAFILES,INNODB_SYS_TABLES,INNODB_SYS_INDE 阅读全文
摘要:
RocksDB是facebook基于LevelDB实现的,目前为facebook内部大量业务提供服务。经过facebook大量工作,将RocksDB为MySQL的一个存储引擎移植到MySQL,称之为MyRocks。经过两年的发展,MyRocks已经比较成熟(RC阶段),现已进入了facebook M 阅读全文
摘要:
代价模型 mysql 5.7.10代价计算相对之前的版本有5.7 代价模型浅析较大的改进。例如 代价模型参数可以动态配置,可以适应不同的硬件 区分考虑数据在内存和在磁盘中的代价 代价精度提升为浮点型 jion计算时不仅要考虑condition,还要考虑condition上的filter,具体参见参数 阅读全文
摘要:
innodb行锁简介 每个行锁由锁类型和GAP类型组成例如:LOCK_X|LOCK_ORDINARY 表示对记录和记录之前的间隙加排他锁LOCK_S|LOCK_GAP 表示只对记录前的间隙加共享锁 锁的兼容性:值得注意的是,持有GAP的锁(LOCK_GAP和LOCK_ORDINARY)与其他非LOC 阅读全文
摘要:
现象 备库中断,显示如下错误 error log日志如下 查看binlog Incident: LOST_EVENTS 是从主库拉取来 分析 主库写INCIDENT_EVENT的时机 以上两种情况都会造成binlog复制出现不一致,因此主库选择记录INCIDENT_EVENT,备库在解析到 Inci 阅读全文
摘要:
背景 innodb buffer pool作为innodb最重要的缓存,其缓存命中率的高低会直接影响数据库的性能。因此在数据库发生变更,比如重启、主备切换实例迁移等等,innodb buffer poll 需要一段时间预热,期间数据库的性能会受到明显影响。另外mysql 5.7以前innodb bu 阅读全文
摘要:
在mysql主备环境下,主备同步过程如下,主库更新产生binlog, 备库io线程拉取主库binlog生成relay log。备库sql线程执行relay log从而保持和主库同步。 理论上主库有更新时,备库都存在延迟,且延迟时间为备库执行时间+网络传输时间即t4-t2。 那么mysql是怎么来计算 阅读全文
摘要:
保存点在MySQL中, 保存点SAVEPOINT属于事务控制处理部分。利用SAVEPOINT可以回滚指定部分事务,从而使事务处理更加灵活和精细。SAVEPOINT相关的SQL语句如下SAVEPOINT identifier设置SAVEPOINT。如果重复设置同名savepoint,新的会覆盖老的.R... 阅读全文