大纲1.InnoDB磁盘结构2.表空间(Tablespaces)3.数据字典(Data Dictionary)4.双写缓冲区(Double Write Buffer Files)5.重做日志(redo log)6.撤销日志(undo log)7.二进制日志(binlog)8.新版本结构演变1.InnoDB磁盘结构(1)Tablespaces(2)Double Write Buffer(3)redo
大纲1.InnoDB引擎架构2.Buffer Pool3.Page管理机制之Page页分类4.Page管理机制之Page页管理5.Change Buffer6.Log Buffer1.InnoDB引擎架构(1)InnoDB引擎架构图(2)InnoDB内存结构(1)InnoDB引擎架构图下面是InnoDB引擎架构图,主要分为内存结构和磁盘结构两大部分。(2)InnoDB内存结构2.Buffer Po
大纲1.异步复制为MySQL搭建一套主从复制架构2.半同步复制为MySQL搭建一套主从复制架构3.GTID为MySQL搭建一套主从复制架构4.并行复制降低主从同步延迟或强制读主库1.异步复制为MySQL搭建一套主从复制架构(1)MySQL主从复制的原理(2)搭建主从复制架构的配置(1)MySQL主从复制的原理一.MySQL主从复制的架构主库接收增删改操作,把增删改操作BinLog写入本地文件。然后
大纲1.禁止或改写SQL避免自动半连接优化2.指定索引避免按聚簇索引全表扫描大表3.按聚簇索引扫描小表减少回表次数4.避免产生长事务长时间执行1.禁止或改写SQL避免自动半连接优化(1)业务场景介绍(2)SQL性能问题分析(3)SQL性能调优(1)业务场景介绍某互联网公司的用户量比较大,有百万级日活用户的一个量级。该公司的运营系统会专门通过各种条件筛选出大量用户发送推送消息,比如一些促销活动的消息
大纲1.什么是执行计划2.执行计划包含哪些内容3.SQL语句和执行计划的总结4.SQL语句使用多个二级索引5.多表关联的SQL语句如何执行6.全表扫描执行计划的成本计算方法7.索引的成本计算方法8.MySQL如何优化执行计划9.explain的参数说明1.什么是执行计划(1)什么是SQL优化一般开发一个系统,都是先设计表结构,表结构必须满足业务需求。然后写代码,代码写完后,根据代码是如何查询表来设
大纲1.磁盘数据页的存储结构2.没有索引数据库如何搜索数据3.在表中插入数据时如何进行页分裂4.如何设计主键索引及如何根据主键索引查询5.索引的物理存储结构6.更新数据时自动维护的聚簇索引是什么7.针对主键之外的字段建立的二级索引8.插入数据时如何维护不同索引的B+树9.完整的MySQL的B+树索引原理总结10.联合索引使用规则11.在SQL里进行排序时如何能使用索引12.在SQL里进行分组的时候
大纲1.简单总结增删改SQL语句的实现原理2.多个事务同时执行的场景遇到的问题3.多个事务并发更新或查询时可能出现的问题4.SQL标准中对事务的4个隔离级别5.MySQL是如何支持4种事务隔离级别的6.Spring事务注解了如何设置隔离级别7.uodo log多版本链介绍8.基于undo log多版本链实现ReadView机制9.RC隔离级别如何基于ReadView机制实现10.RR隔离级别如何基
大纲1.redo日志对事务提交后数据不丢失的意义2.redo日志文件的构成3.redo日志会写入到Redo Log Blcok中4.redo日志如何写入到Redo Log Blcok中5.Redo Log Buffer解析6.Redo Log Buffer的刷盘时机7.undo log回滚日志原理1.redo日志对事务提交后数据不丢失的意义(1)redo log保证事务提交后修改的数据不丢失(2)
大纲1.MySQL日志的顺序写和数据文件的随机读指标2.Linux存储系统软件层原理及IO调度优化原理3.数据库服务器使用的RAID存储架构介绍4.数据库Too many connections故障定位1.MySQL日志的顺序写和数据文件的随机读指标(1)磁盘随机读操作(2)磁盘顺序写操作(1)磁盘随机读操作MySQL在执行增删改查时,会从表空间的磁盘文件里,读取数据页出来。这个过程是典型的磁盘随
大纲1.为什么不能直接更新磁盘上的数据2.为什么要引入数据页的概念3.一行数据在磁盘上是如何存储的4.一行数据中的NULL值是如何处理的5.一行数据的数据头存储的是什么6.一行数据的真实数据如何存储7.数据在物理存储时的行溢出和溢出页8.数据页的物理存储结构9.表空间的物理存储结构10.InnoDB存储模型及读写机制总结前面介绍了MySQL的数据缓存机制和内存数据更新机制,接下来介绍MySQL的表
大纲1.Buffer Pool是什么2.如何配置Buffer Pool的大小3.数据页是MySQL中抽象出来的数据单位4.数据页如何对应Buffer Pool中的缓存页5.缓存页对应的描述信息是什么6.Buffer Pool简单总结7.数据库启动时如何初始化Buffer Pool8.free链表可判断哪些缓存页是空闲的9.free链表占用多少内存空间10.如何读取数据页到Buffer Pool的缓
大纲1.普通的Java应用系统能抗多少请求2.高并发下的数据库用什么样的机器3.部署完数据库之后需要先进行压测4.QPS和TPS之间的区别5.IO相关的压测性能指标6.压测时需要关注的其他性能指标7.一台机器每秒可以抗多少并发的影响因素8.sysbench是非常好用的数据库压测工具9.压测中除了QPS和TPS外还要观察机器性能10.压测时如何观察机器的CPU负载情况11.压测时如何观察机器的内存负
大纲(4120字)1.更新语句在MySQL中是如何执行的2.重要的内存结构—Buffer Pool缓冲池3.undo日志文件如何让更新的数据可以回滚4.更新Buffer Pool缓冲池中的缓存数据5.Redo Log Buffer如何避免宕机时数据丢失6.如果还没提交事务时MySQL宕机了怎么办7.提交事务时将redo日志写入磁盘中8.redo日志刷盘策略的选择和建议9.MySQL的redo lo
大纲(2426字)1.MySQL驱动的作用2.Java系统中的数据库连接池的作用3.MySQL中的数据库连接池的作用4.网络连接必须让线程来处理5.SQL接口会负责处理接收到的SQL语句6.查询解析器会让MySQL读懂SQL语句7.查询优化器会选择最优的查询路径8.调用存储引擎接口来真正执行SQL语句9.执行器会根据执行计划调用存储引擎的接口1.MySQL驱动的作用如果要在Java系统中访问MyS
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号