首页 > 数据库 >MySQL技术内幕:InnoDB存储引擎-姜承尧.pdf下载

MySQL技术内幕:InnoDB存储引擎-姜承尧.pdf下载

时间:2024-01-19 09:45:18浏览次数:46  
标签:4.4 存储 4.6 姜承尧 1.3 引擎 InnoDB MySQL

由资深mysql专家亲自执笔,中外数据库专家联袂推荐,权威性毋庸置疑。

内容深入,从源代码的角度深度解析了innodb的体系结构、实现原理、工作机制,并给出了大量最佳实践,能帮助你系统而深入地掌握innodb,更重要的是,它能为你设计和管理高性能、高可用的数据库系统提供绝佳的指导。

注重实战,全书辅有大量的案例,可操作性极强。 全书首先全景式地介绍了mysql独有的插件式存储引擎,分析了mysql的各种存储引擎的优势和应用环境;接着以innodb的内部实现为切入点,逐一详细讲解了innodb存储引擎内部的各个功能模块,包括innodb存储引擎的体系

目录

推荐序

前言

为什么要写这本书

第1版与第2版的区别

读者对象 如何阅读本书 勘误和支持

致谢

第1章 MySQL体系结构和存储引擎

1.1定义数据库和实例

1.2 MySQL体系结构

3 MySQL存储引擎

1.3.1 InnoDB存储引擎

1.3.2 MyISAM存储引擎

1.3.3NDB存储引擎

1.3.4 Memory存储引擎

1.3.5 Archive存储引擎

1.3.6 Federated存储引擎

1.3.7 Maria存储引擎

1.3.8其他存储引擎

1.4各存储引擎之间的比较

1.5连接 MySQL

1.5.1TCP/P

1.5.2命名管道和共享内存

1.5.3UNX域套接字

1.6小结

第2章 InnoDB存储引擎

2.1IoDB存储引擎概述

2.2 Inno de存储引擎的版本

2.3 InnoDe体系架构

2.3.1后台线程

2.3.2内存

24 Checkpoint技术

2.5 Master Thread工作方式

2.5.1 InnoDB1.0.x版本之前的 Master Thread

2.52 InnoDB1.2.x版本之前的 Master Thread

2.5.3 InnoDB1.2x版本的 Master Thread

2.6 Inno dB关键特性

2.6.1插入缓冲

2.6.2两次写

2.6.3自适应哈希索引

2.6.4异步IO

2.6.5刷新邻接页

2.7启动、关闭与恢复

2.8小结 第3章文件

3.1参数文件

3.1.1什么是参数

3.1.2参数类型

3.2日志文件

3.2.1错误日志

3.22慢查询日志

3.2.3查询日志

3.24二进制日志

3.3套接字文件

34pid文件

3.5表结构定义文件

3.6 Inno de存储引擎文件

3.6.1表空间文件

3.6.2重做日志文件

3.7小结 第4章表

4.1索引组织表

4.2 InnoDB逻辑存储结构

4.2.1表空间

4.2.2段

4.2.3区

4.2.4页

4.2.5行

4.3 InnoDB行记录格式

4.3.1 Compact行记录格式

4.3.2 Redundant行记录格式

4.3.3行溢出数据

43.4 Compressed和 Dynamic行记录格式

4.3.5CHAR的行结构存储

4.4 InnoDB数据页结构

4.4.1 File header

4.4.2 Page Header

4.4.3 Infimum/I Supremum Record

4.4.4 User Record /Free Space

4.4.5 Page Directory

4.4.6 File trailer

4.4.7 InnoDB数据页结构示例分析

4.5 Named File formats机制

4.6约束

4.6.1数据完整性

4.6.2约束的创建和查找

4.6.3约束和索引的区别

4.6.4对错误数据的约束

4.6.5ENUM和SET约束

4.6.6触发器与约束

4.6.7外键约束

4.7视图

4.7.1视图的作用

4.7.2物化视图

4.8分区表

4.8.1分区概述

4.8.2分区类型

4.8.3子分区

4.8.4分区中的NULL值

4.8.5分区和性能

4.8.6在表和分区间交换数据

4.9小结

第5章索引与算法

 

下载地址

https://pan.baidu.com/s/1XEk7CQljWek_pMGpx2ElKg

如需提取码:

[打开微信]->[扫描下方二维码]->[关注数据与人] 输入”500006″ 获取提取码 

 

标签:4.4,存储,4.6,姜承尧,1.3,引擎,InnoDB,MySQL
From: https://www.cnblogs.com/ataoxz/p/17973964

相关文章

  • MySQL 的保留账号
    以下账号是MySQL中的保留账号,在mysql初始化的时候创建。>selectuser,host,authentication_string,account_lockedfrommysql.userwhereaccount_locked='Y';+------------------+-----------+------------------------------------------------------------------------+-......
  • MySQL int(1)、int(20) 的区别
    在设计数据库表的时候,经常需要设计一个id字段,它的类型一般都是整型int,经常会遇到int(1)、int(20)等。int的范围:有符号的整型范围是-2147483648~2147483647无符号的整型范围是0~4294967295参看MySQL手册,int(M):Mindicatesthemaximumdisplaywidthforintegertypes.int(......
  • mysql数据文件ibd恢复
    mysql数据文件ibd恢复2020-08-18 共4343人围观因某些原因把mysql给搞坏了,又没有备份,只剩data文件中各个库的.frm和.ibd文件了。通过不懈寻找度娘的努力,终于让我找到了一种恢复数据的方法。该方法的前提是,你需要记得每个表结构,字段名必不可少,字段类型最好能记得或者大概记得,......
  • wireshark实践 - 调试spring连接mysql失败问题
    问题描述spring:datasource:driver-class-name:com.mysql.jdbc.Driverurl:jdbc:jdbc:mysql://122.224.147.xxx:90/dev?characterEncoding=utf8username:xxxpassword:xxxtype:com.alibaba.druid.pool.DruidDataSourceurl格式写错了(两个jdbc),然......
  • ubtunu安装mysql5.7
    1.官网:mysql下载链接官网地址 2.我们新建一个文件夹,路径/usr/local/mysql这里选择下载5.7.29的ubuntu版本注意是amd64不是arm64,或者执行下面命令wgethttps://downloads.mysql.com/archives/get/p/23/file/mysql-server_5.7.29-1ubuntu18.04_amd64.deb-bundle.tar1解压下载下......
  • mysql8.0索引数据结构
    1、为什么使用索引假如给数据使用二叉树这样的数据结构进行存储,如下图所示2、索引及其优缺点2.1、索引概述2.2、优点(1)类似大学图书馆建书目索引,提高数据检索的效率,降低数据库的IO成本,这也是创建索引最主要的原因。(2)通过创建唯一索引,可以保证数据库表中每一行数据的唯一性......
  • python ssh连接mysql
    fromsshtunnelimportSSHTunnelForwarderimportpymysqlclassMySqlSSH:def__init__(self):self.server=SSHTunnelForwarder(ssh_address_or_host=('13.229.92.6',22),#sshhostssh_username='lenox......
  • mysql 被删除如何恢复
    恢复ibd使用-------OnDebian/Ubuntu/LinuxMint-------$sudoapt-getinstalltestdisk-------OnCentOS/RHEL/Fedora-------$sudoyuminstalltestdisk-------OnFedora22+-------$sudodnfinstalltestdisk-------OnArchLinux-------$pacman-Ste......
  • mysql内置函数
    Mysql常用内置函数数字函数函数名称作用ABS求绝对值SQRT求二次方根MOD求余数CEIL和CEILING两个函数功能相同,都是返回不小于参数的最小整数,即向上取整FLOOR向下取整,返回值转化为一个BIGINTRAND生成一个0~1之间的随机数,传入整数参数是,用来产生重......
  • MySQL并行复制死锁源码解析
    最近一个MySQL5.7.21备库告警当天的备份失败,登录上去看的时候发现前一天的备份任务还没有结束,通过查看日志发现无法备份成功的原因是一直无法获取FTWRL锁,登录MySQL查看会话状态发现其中几个复制worker一致处于异常状态,下发STOPSLAVE命令时命令也一直被卡住,当时的会话状态如下:......