V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Dropbox - Simplify your life
注册 Dropbox
Dropbox for Developers
Livid
V2EX  ›  Dropbox

这里有人试过用 Dropbox 去同步几台开发机器上的 MySQL 的 data 目录么?

  •  
  •   Livid · 2012-04-20 00:46:12 +08:00 · 3914 次点击
    这是一个创建于 4599 天前的主题,其中的信息可能已经有所发展或是发生改变。
    10 条回复    1970-01-01 08:00:00 +08:00
    aveline
        1
    aveline  
       2012-04-20 00:47:28 +08:00
    推荐使用MySQL Replication。

    直接同步文件会有各种各样奇怪的问题的。
    virushuo
        2
    virushuo  
       2012-04-20 01:04:51 +08:00
    如果是单点写入别处都是读有可能还行…不过总觉得很危险,还是用bin log放心点。
    alvin2ye
        3
    alvin2ye  
       2012-04-20 09:36:02 +08:00
    不行的,你不能忽略内存的不一致
    napoleonu
        4
    napoleonu  
       2012-04-20 09:59:05 +08:00
    不知道 Dropbox 同步有多智能,不知道会不会出现每次都从头上传文件的情况,这样网络的开销会很大。binlog 是追加写应该不会出现每次从头传的问题。

    另外 innodb 会有如 @alvin2ye 所说的情况,innodb 不是每个事务完毕都刷 buffer pool 中的脏页到数据文件的。 即使是 myisam 也会有文件系统的 cache 以及 raid 卡的 cache 等问题不会即时同步到磁盘。

    所以使用定时全备份加设置好 sync_binlog 参数之后同步 binlog 是在服务器资源不是很充足的时候的一个比较靠谱的做法。

    使用全备加 binlog 原因是 Dropbox 空间毕竟有限,而 binlog 一般都增长很快,所以使用这样的"增量备份",每次全备都可以清理掉全备前面所有或者一段时间前所有的 binlog 来节省 Dropbox 空间,当然如果哟个100G的 Dropbox 空间,一点 binlog 不删对于网站型应用同步个一年半载一点问题没有。
    alvin2ye
        5
    alvin2ye  
       2012-04-22 00:04:37 +08:00
    @napoleonu
    曾经研究过, 那搜索到的忘记了, 我提供思路, 不保证对haha,
    先把文件切块, 对没块做md5和sha-1, md5 极少会重复, sha和md5一起后可以保证不重复.(又相信爱情了)
    远程和本地的文件的块做比较 [开始位,结束位, md5, sha] , 如果不对在不对的块里再切小块,以此类推. 切到一个固定值如 1024 后就开始覆盖.

    所以, 再大的文件可以二分法切和增量覆盖.

    innodb 和 myisam 一样都不行的
    sampeng
        6
    sampeng  
       2012-04-22 00:26:39 +08:00
    你是要疯啊。。。mysql自带功能不用用dropbox。。
    napoleonu
        7
    napoleonu  
       2012-04-22 00:52:20 +08:00
    Replication 其实也是通过同步 binlog 实行数据同步的,只要效率好,全备份加 Dropbox 同步 binlog 确实是个不错的方法。
    Livid
        8
    Livid  
    MOD
    OP
       2012-04-22 00:56:48 +08:00
    主要是为了解决一台带着走的 MBP 和家里的 iMac/Mac mini Server 的 mysql data 同步的问题。

    确实不会存在同时写入的状况,改天用一个库试试。
    napoleonu
        9
    napoleonu  
       2012-04-22 01:03:23 +08:00
    非生产库同步 data 目录一点问题没有,哈,就因为 mysql 空闲。如果是使用 innodb 记得共享表空间也要同步。
    zealot
        10
    zealot  
       2012-04-22 01:17:54 +08:00
    以前光是Excel文件打开状态下就会有被锁定,无法同步的问题,现在不知道还是不是这样。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   969 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 21:55 · PVG 05:55 · LAX 13:55 · JFK 16:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.