1、mysql主從複製:
類型: 1、基於語句地複製,將執行地命令複製。默認採用此法,效率高。
2、基於行的複製。將改變的內容複製
3、混合類型的複製
複製過程:master在日誌中記錄改變,並通知存儲引擎提交,slave將master的日誌複製到中繼日誌,slave從中繼日誌讀取事件並更新,使其與master一致。
2、mysql讀寫分離:只在主服務器上寫,只在從服務器上讀
分類: 1、基於程序代碼內部實現
2、基於中間代理層實現:客戶端是mysql間通過代理連接。amoeba是代理性產品。
基於Java語言開發,不支持事物和存儲過程。
3、時間服務器:ntp服務,端口號:123/udp
服務器端主配置文件:/etc/ntp.conf
客戶端同步時間:ntpdate 服務器IP地址
4、主從複製的配置:
主服務器的配置:
1、修改主配置文件/etc/my.cnf
2、添加從服務器授權並重啓服務器,查看主服務器日誌文件和偏移位置值:show master status;
從服務器配置:
1、修改主配置文件/etc/my.cnf,注意server-id與主服務器不同
2、配置與主服務器同步,確認成功連接到主服務器:show slave status\G;
確保可見兩線程成功連接:Slave_IO_Running:yes 和 slave_SQL_Running:yes
5、mysql讀寫分離:
amoeba: mysql的分佈式數據庫代理層軟件。基於java開發,可實現mysql高可用、負載均衡、讀寫分離等等,需要java環境支持。
主要的配置文件有兩個:amoeba.xml 和 dbServer.xml
端口號:80666/tcp,啓動命令 amoeba start &