• 请不要在回答技术问题时复制粘贴 AI 生成的内容
mapperv
V2EX  ›  程序员

各位大佬看看这需求,有没有更好的方案

  •  
  •   mapperv · Oct 21, 2020 · 2621 views
    This topic created in 2064 days ago, the information mentioned may be changed or developed.
    13 replies    2020-10-21 20:06:08 +08:00
    mapperv
        1
    mapperv  
    OP
       Oct 21, 2020
    简单的一句话概括就是把 服务器 1 的 sqlserver 数据库的数据 同步到 服务器 2 的 mysql 数据库
    异构数据,是选择定时同步好还是实时同步好呢
    选的话各位有什么好点的方案?
    leoninmin
        2
    leoninmin  
       Oct 21, 2020
    选择那种方式,取决你的业务需求
    chengz
        3
    chengz  
       Oct 21, 2020
    监控 sqlserver 的操作日志,类似 mysql 的 binlog,然后同步数据?
    没做过,等大佬的方案
    mapperv
        4
    mapperv  
    OP
       Oct 21, 2020
    @leoninmin #2 目前中意的是实时同步,看网上都是推荐 ODBC 不是各位有用过什么好的办法没
    mapperv
        5
    mapperv  
    OP
       Oct 21, 2020
    @chengz #3 群里的大佬也说监控日志然后写
    Michael94
        6
    Michael94  
       Oct 21, 2020
    定时同步的话可以在表里新增一个时间戳字段,判断时间戳同步
    fdgdbr
        7
    fdgdbr  
       Oct 21, 2020
    是不是可以用 mq,sqlserver 用 cdc 把数据库日志扔到 mq 里面,app 端写个消费程序把数据放到 mysql
    wakzz
        8
    wakzz  
       Oct 21, 2020
    比较简单的方案是实时同步,通过阿里云的 DTS 服务来实现数据推送,然后楼主只要监听推送的 kafka 消息就行了。
    也可以自撘 canel 来自己搞数据监听,就是需要一些运维成本。
    kkkkkrua
        9
    kkkkkrua  
       Oct 21, 2020
    datax?
    wakzz
        10
    wakzz  
       Oct 21, 2020
    好吧我看错了,sqlserver 的话。。。开源闭源的监听中间件都挺少的,自己搞监听成本有点大,又不能双写,还是定时同步吧,这个会简单一些。
    kischang
        11
    kischang  
       Oct 21, 2020
    sqlserver 实时到 Kafka 有解决方案
    java 写个程序订阅然后把数据存到 MySQL,也不算难

    当然直接一点的话,把 实时到 Kafka 的代码处理一下,解析结果直接往 MySQL 里写就好啦
    Kirsk
        12
    Kirsk  
       Oct 21, 2020 via Android
    写个接口 用逻辑层解决 其实和 rpc 类似 队列忽略了复杂度不太合适
    glacer
        13
    glacer  
       Oct 21, 2020
    阿里云 DTS
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1052 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 18:35 · PVG 02:35 · LAX 11:35 · JFK 14:35
    ♥ Do have faith in what you're doing.