# 其他减少内存占用的方法

+ 调整 GO 内存释放策略
  + GO 的 Runtime 在释放内存返回到内核时，在 Linux 平台下有以下两种策略： 
    + MADV_DONTNEED
    + MADV_FREE
  + 在 TiDB Server 启动前添加 GODEBUG=madvdontneed=1 环境变量

+ 滚动重启 TiDB Server
-------------------------------------------------------------
其他减少内存占用的方法
通过 Grafana 里的 TiDB-Runtime --> Memroy Usage 面板，确认如果是非 SQL 造成的内存使用异常问题，即非黄色部分占用异常，造成可尝试使用下述方法：

- 调整 GO 内存释放策略
GO 的 Runtime 在释放内存返回到内核时，在 Linux 平台下有以下两种策略：
  - MADV_DONTNEED：会让 RSS 数量下降得很快，但是效率比较低
  - MADV_FREE ：Runtime 在释放内存时，使用了更加高效的 MADV_FREE ，即内核会等到内存紧张时才会释放。在释放之前，这块内存依然可以复用。这个特性从 Linux 4.5 版本内核开始支持
在 TiDB Server启动前添加 GODEBUG=madvdontneed=1 环境变量，GC 时立即将内存返还给操作系统，降低内存占用。

- 滚动重启 TiDB Server
