1. 程式人生 > 其它 >第221天學習打卡(MySQL的日誌檔案 Redis備份是如何執行的)

第221天學習打卡(MySQL的日誌檔案 Redis備份是如何執行的)

MySQL的日誌檔案

  • 重做日誌(redo log)

  • 回滾日誌(udo log)

  • 二進位制日誌(binlog)

  • 錯誤日誌(errorlog)

  • 慢查詢日誌(slow query log)

  • 一般查詢日誌(general log)

  • 中繼日誌(relay log)

Redis 備份是如何執行的

Redis 會單獨建立(fork)一個子程序來進行持久化,會先將資料寫入到一個臨時檔案中,待到持久化過程都結束了,再用這個臨時檔案替換上次持久化好的檔案。整個過程中,主程序是不進行任何IO操作的,這就確保了極高的效能,如果需要進行大規模資料的恢復,且對於資料恢復的完整性不是非常敏感的,那RDB方式要比AOF方式更加的高效。RDB的缺點是最後一次持久化的資料可能丟失。

Fork

fork的作用是複製一個與當前程序一樣的程序。新程序的所有資料(變數、環境、變數、程式計數器等)數值都和原程序一致,但是是一個全新的程序,但是是一個全新的程序,並作為原程序的程序。

在Linx 程式中,fork()會產生一個和父程序完全相同的子程序,但子程序在此後多會exec系統呼叫,出於效率考慮,Linux中引入了“寫時複製技術”。

一般情況父程序和子程序會共用同一段實體記憶體,只要程序空間的各段內容要發生變化時,才會將父程序的內容複製一份子程序。

尚矽谷2021逆襲版Java面試題第三季(java大廠面試題,周陽主講)嗶哩嗶哩bilibili