一、索引的使用
创建索引的情况:
1、主建自动创建唯一索引
2、频繁作为查询条件的字段应该要创建索引
3、查询中其他表与其他表关联的字段,外建关系建立索引
4、频繁更新字段,不适合创建索引
5、where条件里用不到的字段补充创建索引
6、查询中统计或者分组字段
不需要创建索引的情况:
1、表记录太少
2、经常增删的表
3、数据重复且分布平均的字段
二、数据库常见的瓶颈
CPU负担重:一般发生在数据装入内存和磁盘重读起数据的时候。
IO 负担重:装入数据远远大常见于内存容量时。
服务器的性能瓶颈
explain:计划执行
怎么玩:explain+SQL
三、数据库的分库分表场景优化
1、硬件优化
2、数据库调优、例如增加索引、优化慢查询
3、引入缓存、减轻数据库的压力
4、程序与数据库表优化,重构
5、读写分离或分表分库
四、redis持久化RDB和AOF
Redis 持久化:
提供了多种不同级别的持久化方式:一种是RDB,另一种是AOF.
RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照
AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。
五、Redis集群添加和删除节点(主和从)
(1)启动集群:因为集群创建一次就行,所以直接启动所有节点服务即可
(2)查看服务器的运行状态:ps -ef | grep redis
(3)登录其中一个节点,查看集群状态
(4)我们将新建两个服务,在之前搭建的集群中新增两个节点(一主一从)
步骤一:创建7007、7008文件夹,拷贝redis.conf文件到两个文件夹下,然后进行配置文件的修改
步骤二:启动7007和7008俩个服务并查看服务状态。
(5)先稍微看一下redis-trib脚本能怎么使用:
(6)新增一个主节点7007(Master)
查看集群节点状态: