主要說下讀寫分離,
當我們的數據量很大時,數據庫服務器的壓力變大,這時候我們需要從架構方面來解決這一問題,在一個網站中讀的操作很多,寫的操作很少,這時候我們需要配置讀寫分離,把讀操作和寫操作分離出來,最大程度的利用好數據庫服務器。
讀寫分離的實現原理就是在執行SQL語句的時候,判斷到底是讀操作還是寫操作,把讀的操作轉向到讀服務器上(從服務器,一般是多台),寫的操作轉到寫的服務器上(主服務器,一般是一台,視數據量來看)。
當然為了保證多台數據庫數據的一致性,需要主從復制。
主從復制的實現原理是:mysql中有一種日志,叫做bin日志(二進制日志),會記錄下所有修改過數據庫的sql語句。
主從復制的原理實際是多台服務器都開啟bin日志,然后主服務器會把執行過的sql語句記錄到bin日志中,之后從服務器讀取這個bin日志,把該日志的內容保存到自己中繼日志里面,從服務器再把中繼日志中記錄的sql語句同樣的執行一遍。這樣從服務器上的數據就和主服務器相同了。
原文鏈接:https://blog.csdn.net/camhan/article/details/73368725