【C++】类初探常量成员函数与构造函数初始值列表
常量成员函数
【C++】函数返回函数指针的多种定义方式
返回函数指针 函数指针
【C++】函数返回数据指针的多种定义方式
函数返回数据指针
【C++】数组指针与error: lvalue required as increment operand
error: lvalue required as increment operand 数组指针
【C++】C++函数可以返回列表或者容器
C++函数返回容器
【C++】为什么不能定义数组的引用,却可定义变量的引用
不能定义数组的引用
【C++】迭代器与二分查找
二分查找 迭代器
【C++】二分查找与递归
二分查找 递归
【C++】标准库迭代器类型
迭代器访问
【C++】指针与迭代器对比(运算符)
指针运算符 迭代器运算
【MySQL】查询事物与DDL引发Waiting for table metadata lock的两个阶段
Waiting for table metadata lock
【MySQL】MySQL5.6与MySQL5.7中语句lock table ...read加锁的区别
lock table DML
【MySQL】崩溃恢复问题解决:Forcing InnoDB Recovery
innodb_force_recovery innodb崩溃恢复
【MySQL】SERIALIZABLE隔离级别下的一致性非锁定读
背景:通常串行化隔离级别下,事物都是串行执行,读数据也会加锁,读会阻塞写,写也会阻塞读问题:1.串行化下事物加的是表锁吗?2.写的事物一定会阻塞读事物吗?事物真的不会并发吗?实验1(串行化下事物加的是行锁而不是表锁):session 1session 2结论:串行化并不是加的表锁,而是行锁实验2:(通常情况...
一个read commited下的死锁分析
read commited dead lock lock lock wait transaction
【MySQL】Insert buffer 漫谈
innodb使用insert buffer"欺骗"数据库:对于为非唯一索引,辅助索引的修改操作并非实时更新索引的叶子页,而是把若干对同一页面的更新缓存起来做合并为一次性更新操作,转化随机IO 为顺序IO,这样可以避免随机IO带来性能损耗,提高数据库的写性能。
【案例】常驻查询引发的thread pool 性能问题之一
MySQL 的threadpool 新特性在海量高并发业务场景下极大的提高的系统并发性能,当然生产环境使用过程中也遇到种种问题,本文讲述一列 由于类似于 binlogdump 长连接导致系统系能抖动的问题,通过调整thread_pool_oversubscribe 参数解决
【案例】常驻查询引发的thread pool 性能问题之二
本文又是一例由于常驻连接导致thread pool 中的一个group被堵塞的案例,但是问题的表象和之前的例子有所不同,读者可以思考问题的分析思路当做参考。
MySQL 5.6 Table cache 简介
一、 Table cache MySQL 5.6后,引入了“table_cache_instances”参数来控制 table cache instance的个数。目前最大值是64,默认值是1。建议值是16,当系统CPU核数高于16时。引入此参数的目的是,提高并发。相当于把table cache 拆成了多个分区,每个分区的打开table句柄数为:table_open_cache / table...
mysql的内部临时表
什么是内部临时表?不同于手工创建的临时表,在sql执行过程中可能会用到临时文件存储查询结果,称为internal temporary table;该过程由Mysql自动完成,用户无法手工干预;这些表或使用memory引擎存于内存,或使...