mysql学习笔记

本文深入讲解MySQL的主要存储引擎如MyISAM与InnoDB的特点及区别,包括事务支持、索引类型(如B-tree索引、全文索引和Hash索引)及其实现方式。此外还介绍了MySQL的日志系统,如binlog、slowquerylog、errorlog和InnoDB redolog的作用与应用场景,并解释了数据文件的组成结构。
mysql主要的存储引擎
MyISAM 默认存储引擎,不支持事务,对整张表加锁
InnoDB 支持事务 ,实现行锁,通过索引实现;实现外键。
索引类型
B-tree索引(经常使用) 顾名思义,就是所有的索引节点都按照balance tree 的数据结构来存储,所有的索引数据节点都在叶节点
Full-text 索引就是我们常说的全文索引,他的存储结构也是b-tree。主要是为了解决在我们需要用like 查询的低效问题
Hash索引 不支持范围查询,只支持in =等操作,当hash值大部分相同,不可避免的出现全表扫描
mysql的重要的日志:
1. binlog 所有修改数据库数据的query以二进制的形式记录到日志文件,包含query的语句、执行时间、消耗的资源以及相关事务信息
2. slow query log
执行时间较长的query日志,采用文本格式存储 有分析工具 mysqlslowdump ,日志包含语句的执行时刻,消耗时间、执行用户、连接主机信息等。
3. error log 严重警告或错误日志
4.innodb redo log
innodb是事务安全的存储引擎,通过redo log以及记录在表空间的undo 信息保证其事务的安全性
mysql的数据文件
.frm文件,所有存储引擎都有,记录表的meta信息
.MYD MyISAM存储引擎数据文件,保存数据
.MYI MyISAM表索引信息。
.ibd以及ibdata innodb存储引擎数据文件,包含数据以及索引 .ibd独享表空间,ibdata则为多个表共享表空间。
mysql主要逻辑模块
query解析和转发
query cache模块
query优化模块
日志模块
复制模块
mysql访问控制
1.db table是否有权限
2.用户以及host是否有

可以利用mysql binlog回复数据,非常之方便 mysqlbinlog --start-position=11 --stop-position=xxx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值