索引
1,B-Tree索引:常见的索引类型
2,哈希索引:基于哈希表实现,只支持等值查询 ,只有Memory存储引擎和NDB Cluster存储引擎显示支持哈希索引
3,全文索引:可在字符列上创建(TEXT,CHAR,VERCHAR)支持MyISAM和InnoDB,自然语言搜索。
4,聚集索引
决定表中数据的物理存储顺序,索引结构和数据存储在一起。
特点:
唯一性:一个表只能有一个聚集索引,因为数据行按照一个特定的顺序进行物理存储。
物理排序:数据行按照聚集索引键值的顺序存储在磁盘
主键与聚集索引:通常聚集索引就是表的主键 在InnoDB引擎中。
优点
1,提高范围查询效率:
2,快速检索数据
缺点
1,插入新行或更新聚集索引可能会导致大量IO操作
MySQL的主从复制
1,两种方式: 基于行 基于语句
基于语句的复制在MySQL3.23中就已经有了,
而基于行的方式则在5.1中才实现。
2,属于一种数据同步机制,将主服务器上的数据变更复制到另一个或多个从服务器,实现数据冗余、负载均衡和高可用性。
3,默认采用异步复制方式
4,复制过程:
1,I/O线程:主库将变更写到日志中(binlog),从库连接到主库,从库中的IO线程请求binlog事件。
2,Dump线程:主库的Dump线程将Binlog事件发送给从库。
3,中继日志(Relay log):从库将接收到的binlog事件保存在本地的中继日志中。
4,SQL线程:从库的SQL线程从中继日志读取事件,并在本地执行,同步数据。
5,架构:
一主一从
一主多从
级联复制:从服务器作为其他从服务器的主服务器,减轻主库的压力。
双主复制:两个主服务器互相复制数据,实现负载均衡和高可用。