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

Centos7 跟 window server 有没有什么办法简便的转移数据,最好脚本实现的这种

  •  
  •   la2la · May 31, 2019 · 2725 views
    This topic created in 2565 days ago, the information mentioned may be changed or developed.

    有一个需求需要定时从 mysql 导出数据到 sql server

    image1

    目前我的想法是,写个脚本定时把数据从 mysql 上导出成 csv 文件,然后 scp 复制到 window server (不太清楚能不能 scp )上,window server 上再写个脚本定时刷新有没有新文件,有的话,就解析导出到 sql server 中。有没有什么更好的方法。

    18 replies    2019-05-31 21:17:07 +08:00
    tjyao520
        1
    tjyao520  
       May 31, 2019
    navicat 连上 MySQL 不行么?
    la2la
        2
    la2la  
    OP
       May 31, 2019
    @tjyao520 从 window server 上不能连接 mysql 数据库,两个不同的局域网
    pmispig
        3
    pmispig  
       May 31, 2019
    过来人告诉你,导出 CSV 一般是不行得,比如时间格式不一样,null 和空字段处理也不一样,各种冲突
    x66
        4
    x66  
       May 31, 2019
    CSV 坑多,我们用 kettle 做数据增量同步
    lihongjie0209
        5
    lihongjie0209  
       May 31, 2019
    kettle
    la2la
        6
    la2la  
    OP
       May 31, 2019
    @pmispig 谢谢指导,json 文件,没这么多问题吧?
    la2la
        7
    la2la  
    OP
       May 31, 2019
    @x66 好的,谢谢,我看看 kettle
    gz911122
        8
    gz911122  
       May 31, 2019
    kettle +1 之前公司这么搞

    现在公司的话,每次插入的时候发个 kafak,然后另外一边订阅消费.

    还有定时任务读 binlog 的,然后插入另外一个库
    d0m2o08
        9
    d0m2o08  
       May 31, 2019
    传输大文件我都是开个 http 服务,直接下载
    小文件就用 nc
    la2la
        10
    la2la  
    OP
       May 31, 2019
    @gz911122 好像有个问题,就是没有机器能同时连上两个数据库,这两个数据库都是内网访问,kettle 应该不行吧?
    nexply1920
        11
    nexply1920  
       May 31, 2019
    直接 wireguard 组个虚拟局域网不就通了嘛
    flyoungstudio
        12
    flyoungstudio  
       May 31, 2019
    网络不通怎么 scp ?拿 U 盘拷?
    whsir
        13
    whsir  
       May 31, 2019
    rsync ?
    la2la
        14
    la2la  
    OP
       May 31, 2019
    @flyoungstudio 抱歉,是我没说清楚,mysql 服务器+centos7 在一个局域网,但是 centos7 有公网 ip,sql server 服务器+window server r2 2008 服务器在一个局域网,window 有公网 ip。一共是 4 台机器
    Takamine
        15
    Takamine  
       May 31, 2019 via Android
    导出来 csv 还不如直接 dump。(。ò ∀ ó。)
    Actrace
        16
    Actrace  
       May 31, 2019
    写个程序不难吧。。
    liaojl
        17
    liaojl  
       May 31, 2019 via Android
    我想的是 CentOS 上写个定时器,WinSever 上暴露个 RPC。定时器隔段时间检查 MySQL 有没有新数据,有新数据的话,就调 WinServer 的 RPC 同步到 SQL Server。
    la2la
        18
    la2la  
    OP
       May 31, 2019
    @Actrace #16 想偷懒
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4785 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 71ms · UTC 01:05 · PVG 09:05 · LAX 18:05 · JFK 21:05
    ♥ Do have faith in what you're doing.