硬件和网络优化
方法 1
贡献者:@kongdom
开启 Raid 卡缓存,使机械硬盘的 I/O 性能直线提升。
MegaCli64 -LDInfo -Lall -aALL #查看
MegaCli64 -LDSetProp -WB -Lall -aAll #有电池启用缓存
MegaCli64 -LDSetProp CachedBadBBU -Lall -aALL #没有电池启用缓存
MegaCli64 -LDSetProp NOCachedBadBBU -Lall -aALL #没有电池关闭缓存
Copy
注意:必须保证 Raid 卡的电池正常,否则意外断电会导致数据丢失
方法 2
贡献者:@tomxu
- 优化磁盘性能:使用高性能 SSD 硬盘以减少磁盘 I/O 延迟。
- 优化网络性能:使用高速网络设备和优化网络拓扑结构以降低网络延迟。
- 优化 CPU 和内存:确保 TiDB 集群有足够的 CPU 和内存资源,以便在高负载下保持良好的性能。
方法 3
贡献者:@ShawnYan
dstat 查看当前硬件资源状态
方法 4
贡献者:@TiDBer_ 小小
硬件优化:对硬件进行优化,升级硬件、调整硬件参数、调整系统参数、优化系统配置。
SQL 方面优化
方法 1
贡献者:@tidb 菜鸟一只
一、
- 先看执行计划,最简单的,看看是不是缺索引,是的话,直接加索引;
- 如果因为统计信息太旧导致执行计划异常,直接重新收集统计信息;
- 统计信息很新但是执行计划仍然不对,指定 hint;
- SQL 执行计划都对,但是速度还是不理想,如果是 OLTP 请求,改写 SQL 或者联系开发修改应用逻辑;
- SQL 执行计划对,但是速度不理想,如果是 OLAP 请求,直接上 TiFlash
二、
如果以上都做了,性能还达不到要求,那么【参数层面优化】
- 看看是不是某些参数设置有问题,能在线修改参数的直接在线修改;
- 不能在线修改的,修