一、引子:普通文件的数据同步
在讲解MySQL主从同步之前,请大家回忆下,前面我们讲解过的普通文件(磁盘上的文件)的同步方法。rsync,sersync,inotify,scp,nfs,Samba,svn
1、NFS网络文件共享可以同步存储数据。
2、samba共享数据。
3、定时任务或守护进程结合rsync,scp。
4、inotify+rsync触发式实时数据同步。
5、ftp数据同步。
6、ssh key+scp/rsync
7、svn版本管理
8、rsync,sersync,inotify,union(双向同步),csync2(多向同步)。
MySQL的主从同步方案,和上述的2,3点类似的。只不过MySQL无需借助第三方工具,而是其自带的同步复制功能,另外一点,MySQL的主从同步并不是磁盘上文件直接同步。replication
总结企业linux运维场景数据同步方案:
1、文件级别同步方案
scp,Nfs,Sftp,http,samba,rsync,csync2,union
思想:
1.文件级别也可能利用mysql,MongoDB等软件。
2.俩个服务器同时写数据,双写就是一个同步机制。
2、文件系统级别同步
drbd(基于文件系统同步网络RAID1),同步几乎任何业务数据。
mysql数据库的官方推荐drbd同步数据,所有单点服务例如:NFS,MFS(DRBD)等都可以用drbd。
3、数据库同步方案
a.自身同步机制:
mysql replication,mysql主从复制(逻辑的SQL从写)
oracle dataguard(物理的磁盘快,逻辑的SQL语句从写)
b.第三方drbd,参考URL