简介:MySql是开源免费的关系型数据库
1.MySql复制原理:
分类方式:Master/slave复制模式,Master中写BinLog日志,Master读取log文件,构建索引
Slave从Master中复制BinLog日志,循环写入ReplayLog日志当中,作用与BinLog相同,构建索引
BinLog复制方式:
SBR:statement Based (SQL重写复制) ,优点带宽消耗少,看到原始sql
RBR:Row Based (行复制,直接复制数据) .优点数据一致性高,直接更新数据,无需查询
Mysql复制架构图:三种模式
Master-slave模式
Master-Master模式
Ring模式
Pyramid模式
2.Mysql数据安全性保证
|-->MyIsam:–支持表锁,全文检索
|-->InnoDB:支持事务特性,支持四种事务级别,支持行锁
|-->BDB:支持commit,rollback,可替换InnoDB
|-->others
4.Mysql索引 :加速select索引,但是增加磁盘究竟开销
4.1 Btree索引:
构建索引: KEY `index1` using btree (`a`,`b`,`c`)
a.最左原则:最左端的索引为a
b.尽量避免回表: 索引构建过程中,回表很难避免,做到尽量即可
4.2 Hash索引:查询条件尽量包含所有索引字段
构建索引:KEY `index1` using hash (`a`,`b`)
select d from test where a=? and b=? (正确)
4.3 FullText索引(倒排索引)
4.4 聚簇索引
直接存储页,索引项排序与数据行存储一致,主键缺省使用
5.Mysql监控
5.1Mysql监控:
a.Mysql线程监控
b.错误日志监控
c.slow-queries慢语句监控
5.2 InnoDB监控
a.表空间监控
b.逻辑读监控
c.物理读监控
5.3 RIAD卡充放电实时监控
6.数据库三范式
6.1:基本符合1范式
6.2:二范式解决部分依赖
6.3:三范式解决传递依赖