mydumper 导出数据 遇到 Out Of Memory Quota![conn_id=24]

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:v4.0.0-rc
  • 【问题描述】:使用mydumper导出2亿条数据的表, 遇到内存不够的错误

命令:

./mydumper -h tidb02 -P 4000 -u root -t 32 -F 256 -B test -T t1 -t 4 --skip-tz-utc -o /data1/mydumper_data 主机配置:

[root@tidb02 ~]# numactl -H
available: 1 nodes (0)
node 0 cpus: 0 1 2 3 4 5 6 7
node 0 size: 32767 MB
node 0 free: 22423 MB
node distances:
node   0
  0:  10

近期研究 oracle到 tidb之间的数据迁移, 测试环境总刚遇到类似的问题 ,如何解决?

  1. 看您的命令是打算使用默认的 -t 4 吗? 但是前面修改了 -t 32 ,请使用默认的 -t 4 导出试试
  2. OOM 如果是tidb中的 OOM,由于默认4.0 参数设置为1G,修改值大一些,试试

谢谢! root:tidb01:/root/tidb-toolkit-cql/bin> ./mydumper -h tidb02 -P 4000 -u root -F 256 -B test -T t1 -t 4 --skip-tz-utc -o /data1/mydumper_data

** (mydumper:10670): CRITICAL **: 17:55:32.993: Could not read data from test.t1: Out Of Memory Quota![conn_id=63]

把 -t 32 参数去掉了还是不行 tidb 的 mem-quota-query 参数在哪里调整?

可以参考修改此参数修改

你好 能把配置文件的具体路径说一下吗, 找了一个下午也没找到 各种文档都没说改哪个文件,或者给个参考文件也行 我试过:tiup cluster edit-config tidb-test 在 global哪里改了, 结果 整个集群崩了

解决了: server_configs: tidb: mem-quota-query: 16073741824

  1. 上面的FAQ截图里展示的 server config ,应该很清楚了吧,你有打开看看直接就可以找到了。
  2. 如果还是不够清楚,请告知要怎么样标识,你才觉得能找到?