1、引子:普通文件的數據同步mysql
在講解MySQL主從同步以前,請你們回憶下,前面咱們講解過的普通文件(磁盤上的文件)的同步方法。rsync,sersync,inotify,scp,nfs,Samba,svnlinux
一、NFS網絡文件共享能夠同步存儲數據。sql
二、samba共享數據。數據庫
三、定時任務或守護進程結合rsync,scp。服務器
四、inotify+rsync觸發式實時數據同步。網絡
五、ftp數據同步。oracle
六、ssh key+scp/rsync運維
七、svn版本管理ssh
八、rsync,sersync,inotify,union(雙向同步),csync2(多向同步)。svn
MySQL的主從同步方案,和上述的2,3點相似的。只不過MySQL無需藉助第三方工具,而是其自帶的同步複製功能,另一點,MySQL的主從同步並非磁盤上文件直接同步。replication
總結企業linux運維場景數據同步方案:
一、文件級別同步方案
scp,Nfs,Sftp,http,samba,rsync,csync2,union
思想:
1.文件級別也可能利用mysql,MongoDB等軟件。
2.倆個服務器同時寫數據,雙寫就是一個同步機制。
二、文件系統級別同步
drbd(基於文件系統同步網絡RAID1),同步幾乎任何業務數據。
mysql數據庫的官方推薦drbd同步數據,全部單點服務例如:NFS,MFS(DRBD)等均可以用drbd。
三、數據庫同步方案
a.自身同步機制:
mysql replication,mysql主從複製(邏輯的SQL從寫)
oracle dataguard(物理的磁盤快,邏輯的SQL語句從寫)
b.第三方drbd,參考URL