Tagged: MySQL

[汇总]MySQL优化经验和理论 0

[汇总]MySQL优化经验和理论

两类非常隐蔽的全表扫描,不能命中索引 第一类:“列类型”与“where值类型”不符,不能命中索引,会导致全表扫描(full table scan)。 第二类:相join的两个表的字符编码不同,不能命中索引,会导致笛卡尔积的循环计算(nested loop)。 Please follow and like us:0

[转]MySQL 备份恢复 0

[转]MySQL 备份恢复

MySQL 备份恢复(一) mysqldump MySQL 备份恢复(二) select …… into outfile MySQL 备份恢复(三) mydumper MySQL 备份恢复(四) XtraBackup   Please follow and like us:0

[转]自增主键用完了怎么办? 0

[转]自增主键用完了怎么办?

引言 在面试中,大家应该经历过如下场景 面试官:”用过mysql吧,你们是用自增主键还是UUID?” 你:”用的是自增主键” 面试官:”为什么是自增主键?” 你:”因为采用自增主键,数据在物理结构上是顺序存储,性能最好,blabla…” 面试官:”那自增主键达到最大值了,用完了怎么办?” 你:”what,没复习啊!!”    (然后,你就可以回去等通知了!) 这个问题是一个粉丝给我提的,我觉得挺有意(KENG)思(B)! 于是,今天我们就来谈一谈,这个自增主键用完了该怎么办! Please follow and like us:0

[转]业务库负载翻了百倍,我做了什么来拯救MySQL架构? 0

[转]业务库负载翻了百倍,我做了什么来拯救MySQL架构?

最近有一个业务库的负载比往常高了很多,最直观的印象就是原来的负载最高是100%,现在不是翻了几倍或者指数级增长,而是突然翻了100倍,导致业务后端的数据写入剧增,产生了严重的性能阻塞。 一、引入读写分离,优化初见成效 这类问题引起了我的兴趣和好奇心,经过和业务方沟通了解,这个业务是记录回执数据的,简单来说就好比你发送了一条微博,想看看有多少人已读,有多少人留言等。所以这类场景不存在事务,会有数据的密集型写入,会有明确的统计需求。 Please follow and like us:0

[转]百亿大表任意维度查询,如何做到毫秒级返回 0

[转]百亿大表任意维度查询,如何做到毫秒级返回

随着闲鱼业务的发展,用户规模达到数亿级,用户维度的数据指标,达到上百个之多。 如何从亿级别的数据中,快速筛选出符合期望的用户人群,进行精细化人群运营,是技术需要解决的问题。业界的很多方案常常需要分钟级甚至小时级才能生成查询结果。本文提供了一种解决大数据场景下的高效数据筛选、统计和分析方法,从亿级别数据中,任意组合查询条件,筛选需要的数据,做到毫秒级返回。 Please follow and like us:0

[转]MySQL每秒57万的写入 0

[转]MySQL每秒57万的写入

摘要: 一、需求 一个朋友接到一个需求,从大数据平台收到一个数据写入在20亿+,需要快速地加载到MySQL中,供第二天业务展示使用。 二、实现再分析 对于单表20亿, 在MySQL运维,说真的这块目前涉及得比较少,也基本没什么经验,但对于InnoDB单表Insert 如果内存大于数据情况下,可以维持在10万-15万行写入。 Please follow and like us:0

[转]MySQL主从延时这么长,要怎么优化? 0

[转]MySQL主从延时这么长,要怎么优化?

MySQL主从复制,读写分离是互联网常见的数据库架构,该架构最令人诟病的地方就是,在数据量较大并发量较大的场景下,主从延时会比较严重。 Please follow and like us:0

[转]关于MySQL内核,一定要知道的! 0

[转]关于MySQL内核,一定要知道的!

近一个多月,写了一些MySQL内核的文字,稍作总结,希望对大家有帮助。 1.《InnoDB,为何并发如此之高?》 文章介绍了: (1)什么是并发控制; (2)并发控制的常见方法:锁,数据多版本; (3)redo,undo,回滚段的实践; (4)InnoDB如何利用回滚段实现MVCC,实现快照读。 结论是,快照读(Snapshot Read),这种不加锁的读,是InnoDB高并发的核心原因之一。 番外篇:《快照读,在RR和RC下的差异》 快照读,在可重复读与读提交两种事务隔离级别下,有微小的差异,文章通过案例做了简单叙述。 Please follow and like us:0

[转]详解MySQL基准测试和sysbench工具 0

[转]详解MySQL基准测试和sysbench工具

前言 作为一名后台开发,对数据库进行基准测试,以掌握数据库的性能情况是非常必要的。本文介绍了MySQL基准测试的基本概念,以及使用sysbench对MySQL进行基准测试的详细方法。 Please follow and like us:0