【 TiDB 使用环境】生产环境
【 TiDB 版本】
【复现路径】
【遇到的问题:问题现象及影响】
使用git clone https://github.com/pingcap/tidb-docker-compose.git
部署是使用的docker-compose.yml默认配置直接启动部署
问题1:
tidb-docker-compose/data/ 文件夹下硬盘占用过大,其中部分文件夹占用过大(prometheus tikv0 tikv1 tikv2)
请问什么文件夹下的什么文件能直接删除,或者如何解决占用硬盘过大的问题
问题2:
TiDB能否直接用迁移文件夹来还原数据库,如果能直接迁移,需要迁移哪些文件夹,就类似于直接把/tidb-docker-compose/data/ 覆盖到指定服务器对应位置,然后重启docker-compose
问题3:
使用docker-compose部署的,如何调整相关的配置文件,从而不让其过度的占用内存和硬盘
【资源配置】
64G内存 内存已使用52G
存储tidb-docker-compose为100G硬盘 硬盘已使用34G
【附件:截图/日志/监控】
问题1:
在 tidb-docker-compose/data/ 文件夹下,prometheus、tikv0、tikv1、tikv2 这些文件夹是 TiDB 集群的组件,其中 prometheus 是监控组件,tikv0、tikv1、tikv2 是 TiKV 组件。如果你不需要监控数据,可以删除 prometheus 文件夹;如果你的 TiKV 数据已经备份,可以删除 tikv0、tikv1、tikv2 文件夹。但是在删除之前,建议先备份数据,以免误删数据。如果你需要保留监控数据和 TiKV 数据,可以考虑增加硬盘空间。
问题2:
可以使用迁移文件夹来还原数据库。在 TiDB 集群中,TiDB、PD、TiKV 三个组件都有数据需要备份。其中 TiDB 和 PD 的数据可以通过备份对应的 data 目录来实现,TiKV 的数据可以通过备份对应的 data 和 db 目录来实现。具体来说,可以将 tidb-docker-compose/data/ 目录下的 tidb、pd、tikv0、tikv1、tikv2 目录备份到指定服务器对应位置,然后在启动 TiDB 集群时,将对应的 data 和 db 目录挂载到容器中即可。需要注意的是,如果你的 TiDB 集群中使用了 TiCDC 组件,还需要备份 TiCDC 的 checkpoint 目录。
问题3:
使用 docker-compose 部署 TiDB 集群时,可以通过修改 docker-compose.yml 文件中的配置来调整相关的配置文件。例如,可以通过修改 tikv 的配置来调整 TiKV 组件的内存和磁盘使用情况。具体来说,可以在 docker-compose.yml 文件中找到 tikv 的配置,然后修改对应的参数。例如,可以通过修改 server.memory-quota 参数来调整 TiKV 组件的内存使用情况,通过修改 storage.block-cache-size 参数来调整 TiKV 组件的磁盘使用情况。需要注意的是,修改配置文件后需要重启 TiDB 集群才能生效。