
Mysql
寂寞&土豆
代码洁癖患者
展开
-
记录一次spring的事务管理器mybatis一级缓存的坑
原因: 一个@Transactional注解的方法中,连续查询了两次sql,参数一致,两次查询过后再update未加事务时,一切正常。加上事务后,导致两次查询结果不一致,debug后发现加入注解后,两次的sqlSessionProxy对象一致,导致一级缓存生效。下面是未加事务时,sqlSessionProxy对象下面是加上注解后,sqlSessionProxy对...原创 2020-04-27 17:09:50 · 392 阅读 · 0 评论 -
Mysql查询流程分析
临近找工作啦,最近要把基础的东西都过一过,把理论充实一下,为以后的职业发展做好准备。开始步入正题。Mysql的查询流程还是比较复杂的,这只是简单的画了一下。毕竟能力有限.... 图清晰易懂,应该不需要过多的解释了吧~存储引擎一般都采用InnoDB和Myisam,这里就要提一下如何选取两种存储引擎。最大的区别是InnoDB支持事务和外键。但是不支持全文索引。InnoDB是行级锁。Myisam是表级锁...原创 2018-04-09 09:49:59 · 468 阅读 · 0 评论 -
多线程读取数据库300万数据,写入到redis
先说一下业务场景。mysql单表300w条的数据,需要读取到rediis中。如果全部采用单线程的话效率过低,无法接受,因此考虑多线程并发处理。期间踩了好多坑。小伙伴们应该很好奇效率到底差多少,贴一下实验数据。/** * 单线程读取300w数据库时间为 15s 添加链表中总时长17s * 四线程读取300w数据库时间为 31ms左右 且添加链表总时长8s * ...原创 2018-05-27 19:23:33 · 9916 阅读 · 3 评论 -
惊心动魄的一天--mysql
今天的任务应该是把开发库的数据同步到测试库上,弄了一天,一直报错。question 1: 同步数据失败数据量也不是很大,加一起就几个g的sql文件。报错Table ‘xxx’ is full,原本以为是数据库虚拟内存不够,去my.cnf里面修改配置文件 。先运行的这两条命令试了试set global max_allowed_packet = 2000 * 1024 * 1024;发...原创 2019-01-17 17:53:01 · 275 阅读 · 0 评论 -
线上故障排查-mysql
报表系统运行sql,执行出错。问题描述: 别的sql报表都没问题,只有一个报表sql有问题,一执行,mysql立马宕机,sql大概有300行左右。首先监控系统状态,执行sql后发现cpu总利用率位置在50左右,内存利用率在70左右,并没有达到极限。其次怀疑max_connections和buffer_size设置小了,调大重启后无果。打开错误日志,看到如下报错信息。发现应该inno...原创 2019-06-18 15:56:33 · 609 阅读 · 0 评论