你希望活动在哪个城市举办?
都可以,我线上听听
你希望听到哪些技术主题分享?线上&线下皆可
未来的产品规划
是否愿意成为活动讲师?
否
你所在的城市&你的圈子中,用 TiDB 的企业有哪些?
JD
强大!我就是一开始偷懒了,我感觉冲突肯定是我们的分库分表没把数据弄干净,导致多个库里面有重复数据,想改吧改吧参数忽略了。经猫神一提醒,确实得好好查查!
直接把下游的自增主键改成普通列了。这一列业务实际没用。同步的任务因为冲突暂停了,为了避免从头再来,选择新建别名表,处理好表结构,然后把数据通过 insert into select from 处理。然后重命名,最后再开始同步,可以继续向下走。避免重新load一遍。
insert into aaa select * from bbb;
rename table bbb to ccc;
rename table aaa to bbb;
经过检查,是分表有自增id作为主键。确实没法继续同步。
看来偷懒是不行的
,直面问题。
syncers:
global:
worker-count: 64
batch: 500
compact: true
multiple-rows: true
safe-mode: true
safe-mode 已经是 true 了
我看看为什么冲突吧
这个我搜到了,但是我是配置的dm任务,从dm的配置里面怎么改这个?
本来就是一个失败了很久的任务,也没人用,重新启动了下(ts用当前的),发现checkpoint不动。最终是没搞定,直接删了,不同步了,也没时间研究为什么失败了。可惜没法给社区积累经验了
apiVersion: v1
kind: PersistentVolume
metadata:
name: wordpress-pv
spec:
capacity:
storage: 5Gi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
hostPath:
path: /mnt/data
网上找到的pv挂在 hostPath的,你可以参考着把 data 挂载成 pv。
看14小时过去了,是不是已经解决了?
我们的环境pv都是 csi自动分配的,直接挂载卷的经验不多,给不出直接可用的脚本。
有几点建议:
如果数据很重要,建议优先对data卷做个备份,后面恢复万一失败了还可以重头再来。
按你们的环境建一个pv,然后模拟改一下pv对应的data卷。这一步能成功后再在真实的data上恢复pv
pv有了,就好恢复了,pvc关联pv就行,然后对应的启动就行了。
另外我感觉我们讨论的再热闹也没用
,社区好像没什么人力改版论坛。右上角小铃铛通知加个 “全部已读” 这种事儿得一两年了都没做,那个小红点在那里飘着太难受了。
要么再仔细检查检查?我不确定大小写是不是有区别,知道的人可以回一下。我之前绑定过一个,检查着看是没区别,但是好像是有个字段大小写不一样。
你绑定的 sql 没看到hint是怎么写的。你验证过吗?绑定完后试试是不是生效了。
我们遇到过绑定后用户的 sql 稍微变了一点,没法命中绑定,看起来是失效了,实际上就不是同一个sql。
建议你仔细检查下。
另外 dashboard 上面,sql 分析那里能看到多个执行计划的话,可以直接通过网页选择绑定哪一个。
对,我当年对数据库一窍不通的时候,数据库起不来(现在想当时应该是恢复wal时间很长),网上就搜到了 CSDN 的帖子,删除一些文件就起来了,数据也就没了
。补充:这不是个特别悲伤的故事,是自己折腾着玩的,并不是生产环境
你只需要换底层镜像的话,何必编译一遍tidb呢?
直接copy二进制不香吗
# 第一阶段:构建阶段
FROM pingcap/tidb:latest AS builder
# 设置工作目录
WORKDIR /app
# 第二阶段:运行阶段
FROM golang:1.20
# 设置工作目录
WORKDIR /app
# 从构建阶段复制构建产物
# 假设构建产物是一个二进制文件 myapp
COPY --from=builder /tidb-server .
# 运行应用程序
CMD ["./myapp"]
上述代码来自于chatgpt,你可以适当改改
看了上面是网络原因导致的。你还是排查下3个pd节点之间网络通不通吧。
telnet xxx:2379
近期 TiDB 社区对你帮助最多的成员有:
@有猫万事足 我的回答猫老师都给我点个赞,至少积分得了不少
,并且前段时间DM 的问题猫老师的回答也很给力!