前置条件
- 系统版本 CentOS Linux release 7.6.1810 (Core)
- kernel 版本 4.20.10-1.el7.elrepo.x86_64
- TiDB 版本 3.0.5
- 内存 32G
- CPU 16 Core
注意事项
TiDB不允许修改 操作系统内存分配策略为 ,只允许为 2
0
或 1
调整TiDB-Server的内存使用上限
1 修改 inventory.ini
- 根据自己机器实际的内存来设置
- 当 TiDB-Server 进程的
常驻内存
超过这个限制,进程将被杀死 - 并且在TiDB-Server的日志中抛出 OOM 异常
.....
# 常驻内存上限
MemoryLimit = 25G
.....
注:这个操作改变的是 /etc/systemd/system/tidb-4000.service
文件中的配置
[root@hostname ~]# cat /etc/systemd/system/tidb-4000.service | grep MemoryLimit
MemoryLimit=25G
[root@hostname ~]#
2 滚动更新 tidb (修改完配置文件一定要更新配置)
[root@hostname ~]# ansible-playbook rolling_update.yml
修改日志保存天数等
修改tidb.yml
设置日志保留天数
max-backups: 10
以字节为单位设置查询的内存配额。默认32G
mem-quota-query: 1073741824
设置最大索引长度
max-index-length: 12288