1
aveline 2012-04-20 00:47:28 +08:00
推荐使用MySQL Replication。
直接同步文件会有各种各样奇怪的问题的。 |
2
virushuo 2012-04-20 01:04:51 +08:00
如果是单点写入别处都是读有可能还行…不过总觉得很危险,还是用bin log放心点。
|
3
alvin2ye 2012-04-20 09:36:02 +08:00
不行的,你不能忽略内存的不一致
|
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 不删对于网站型应用同步个一年半载一点问题没有。 |
5
alvin2ye 2012-04-22 00:04:37 +08:00
@napoleonu
曾经研究过, 那搜索到的忘记了, 我提供思路, 不保证对haha, 先把文件切块, 对没块做md5和sha-1, md5 极少会重复, sha和md5一起后可以保证不重复.(又相信爱情了) 远程和本地的文件的块做比较 [开始位,结束位, md5, sha] , 如果不对在不对的块里再切小块,以此类推. 切到一个固定值如 1024 后就开始覆盖. 所以, 再大的文件可以二分法切和增量覆盖. innodb 和 myisam 一样都不行的 |
6
sampeng 2012-04-22 00:26:39 +08:00
你是要疯啊。。。mysql自带功能不用用dropbox。。
|
7
napoleonu 2012-04-22 00:52:20 +08:00
Replication 其实也是通过同步 binlog 实行数据同步的,只要效率好,全备份加 Dropbox 同步 binlog 确实是个不错的方法。
|
8
Livid MOD OP 主要是为了解决一台带着走的 MBP 和家里的 iMac/Mac mini Server 的 mysql data 同步的问题。
确实不会存在同时写入的状况,改天用一个库试试。 |
9
napoleonu 2012-04-22 01:03:23 +08:00
非生产库同步 data 目录一点问题没有,哈,就因为 mysql 空闲。如果是使用 innodb 记得共享表空间也要同步。
|
10
zealot 2012-04-22 01:17:54 +08:00
以前光是Excel文件打开状态下就会有被锁定,无法同步的问题,现在不知道还是不是这样。
|