【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】5.0以上
【遇到的问题】查询与插入修改时产生死锁,想读写分离,例如在mysql里,可以只读取从库数据。请问采用follower read能达到类似的效果吗?
参考这篇文档即可:
https://docs.pingcap.com/zh/tidb/stable/stale-read
死锁,是业务场景的资源竞争,这个需要考虑下更好的解决方案,依靠数据库的话,仍然没办法避免的
谢谢您的回复。看资料stale read是读历史数据。但我只是想模拟实现类似读mysql从库的操作。
或者我不提死锁。就是单纯的想只读取副本数据,是否可以达到类似读mysql从库的效果?
嗯,要完全模拟,可以 搭建 TiCDC,后面对接一个 Mysql 或者 另外一整套 TiDB,就可以拉
这样成本太高了,想着tidb有副本,希望只读副本的数据
是否有方法可以指定SQL只读取follow 副本?我只知道有follow read的实现原理。
您说得对,我发这个帖子其实就是在问有没有这个方法。
learner 的方式是否可行?
这是一个同步过程的产物,不行吧
应该是要想办法解决死锁原因,只读的话准确性会有问题吧。
ticdc同步数据到mysql, 应用用atlas,cetus,搞个读写分离试试。
死锁的问题可能是程序的问题,搞个读写分离估计解决不了。