动力节点老杜mysql文件_mysql主从复制+mysql主从复制延迟解决方案
生活随笔
收集整理的這篇文章主要介紹了
动力节点老杜mysql文件_mysql主从复制+mysql主从复制延迟解决方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
### 1. 為什么需要mysql主從復制
1. 數據熱備
2. 什么是主從復制
主從復制是指數據從一個mysql主節點復制到一個或者多個從節點。mysql 默認是異步復制的方式, 從節點可以復制主節點中的所有數據或者指定的庫或者表.3. 主從復制原理
即: 1. master 的dump Thread根據slave的請求, 將本地的binlog以events的方式發送給 IO Thread 2. slave IO Thread 接收到binlog events后保存到中繼日志(relay log)中, 傳過來的信息會記錄在master.info文件中. 3. slave sql Thread獲取中繼日志中的內容進行重發, 并把應用過的記錄到relay-log.info中, 默認情況下已經應用過的relay會自動被清理
注意: 1. master 將操作語句記錄在bin log中, 授權slave遠程訪問的權限. 2. master和slave節點的時間需要同步
4. mysql主從復制的具體操作步驟
5. Mysql主從同步延遲分析
Mysql 主從同步都是單線程的, master所有的DDL和DML都會寫入binlog中, 由于binlog是順序讀寫, 所以效率很高, slave的sql Thread將master的DDL和DML操作事件都在slave中重發. DDL和DML 的IO操作是隨機的, 不是順序的, 所以成本要高很多, 另一方面由于SQL Thread也是單線程, 當master并發高的時候,產生的DML數量超出了slaveSQL Thread的處理速度, 或者當slave有大型的query語句產生了鎖, 那么延遲就產生了.解決方案: 1. 業務的持久化層的實現采用分庫架構, mysql服務器可以平行擴展, 分散壓力 2. 單個主庫, 多個從庫, 主寫從讀 3. 服務的基礎架構在業務層和持久化層間加入memcache或者redis構成的cache層. 降低mysql的讀寫壓力
4.不同的業務的mysql放在不同的物理機上,分散壓力. 5. 使用更加好的硬件設備 6. mysql5.7 之后使用MTS并發復制技術, 永久解決復制延遲問題
總結
以上是生活随笔為你收集整理的动力节点老杜mysql文件_mysql主从复制+mysql主从复制延迟解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 语言与golang语言运行速度_Gola
- 下一篇: python 路由转发_RabbitMQ