1. 程式人生 > >MySQL 中的重做日誌,回滾日誌以及二進位制日誌的簡單總結

MySQL 中的重做日誌,回滾日誌以及二進位制日誌的簡單總結

MySQL中有六種日誌檔案,分別是:重做日誌(redo log)、回滾日誌(undo log)、二進位制日誌(binlog)、錯誤日誌(errorlog)、慢查詢日誌(slow query log)、一般查詢日誌(general log),中繼日誌(relay log)。

其中重做日誌和回滾日誌與事務操作息息相關,二進位制日誌也與事務操作有一定的關係,這三種日誌,對理解MySQL中的事務操作有著重要的意義。

這裡簡單總結一下這三者具有一定相關性的日誌。

重做日誌(redo log)

作用:

確保事務的永續性。防止在發生故障的時間點,尚有髒頁未寫入磁碟,在重啟mysql服務的時候,根據redo log進行重做,從而達到事務的永續性這一特性。

內容:

物理格式的日誌,記錄的是物理資料頁面的修改的資訊,其redo log是順序寫入redo log file的物理檔案中去的。

什麼時候產生:

相關推薦

MySQL 日誌日誌以及二進位制日誌簡單總結

MySQL中有六種日誌檔案,分別是:重做日誌(redo log)、回滾日誌(undo log)、二進位制日誌(binlog)、錯誤日誌(errorlog)、慢查詢日誌(slow query log)、一般查詢日誌(general log),中繼日誌(relay log)。

MySQL日誌(redo log)日誌(undo log)以及二進位制日誌(binlog)的簡單總結

MySQL中有六種日誌檔案, 分別是:重做日誌(redo log)、回滾日誌(undo log)、二進位制日誌(binlog)、錯誤日誌(errorlog)、慢查詢日誌(slow query log)、一般查詢日誌(general log),中繼日誌(relay log)。 其中重做日誌和回滾日誌與

Mysql 的MVCC原理undo日誌的依賴

ont http ref 存儲 使用 key 並不是 說過 同時 一、 MVCC 原理了解 ? 原文點擊:MVCC原理淺析 MVCC: Multi-Version Concurrency Control 多版本並發控制:當mysql 開啟事務操作時,或者數據庫崩潰恢復,都

service層數據異常時

service回滾/**刪除 * @param pd * @throws Exception */ @Transactional(rollbackFor = Exception.class) @Override public void delete(String INCOMINGDISPAT

mysql 誤刪除 使用binlog 進行

進制 密碼安全 mit 顯示 host 讀取 end 誤刪 nullable mysql> select * from tet3;+----+-------------+| id | dd |+----+-------------+| 1 |

mysql 的基本用法以及日期的轉換

作用 use 相同 允許 配置 arch out 顯示長度 張三豐 1、mysql int(10) int 類型長度4個字節,大約表示2^32數字,10代表的是顯示長度,一般和FILLZERO約束一起使用,如果沒有達到該長度,填充02-->000000002 mysq

LINUX——關於mysql較詳細的數據庫的主從配置自動備份以及讀寫分離的使用

rep lock ast name ocs lib .cn ket ger 1.主從簡介數據在企業中是非常重要的一部分,存儲數據的數據庫多種多用樣,但卻都存在著一種隱患·數據庫數據丟失·數據庫訪問人數較多時,一臺數據庫無法保證服務質量2.主從的作用·實時災備,用於故障切換·

mysql的保留關鍵字設計資料庫時應注意

設計資料庫時儘量不要用系統保留關鍵字,如果非要用,記得用``包裹,如:`desc` Mysq官方文件地址   http://dev.mysql.com/doc/refman/5.7/en/keywords.html MySQL 5.7 AC

mysql誤刪資料後快速

binlog2sql快速回滾 首先,確認你的MySQL server開啟了binlog,設定了以下引數: [mysqld] server-id = 1 log_bin = /var/log/mysql/mysql-bin.log max_binlog_size = 1000M binlog-

gitlab程式碼:開發人員誤提交程式碼到遠端gitlab伺服器方法

開發人員錯誤將程式碼提交到gitlab的dev分支,回滾方法如下: 1、本地回滾 進入git bash,進入該工程目錄: [email protected] MINGW64 ~ $ cd c: [email protected] MINGW64 /c $ cd gi

MySQL(一)MySQL的隔離級別事務詳解

MySQL的基礎語法,增刪改查就不多贅述了,我打算直接從事務開始,以後如果寫到了,再補充相關的知識。 參考文章: https://www.cnblogs.com/songjy2116/p/7881294.html https://blog.csdn.net/alexdamiao/arti

用Eclipse外掛Git到之前的版本

關於head和tags。 head:我的理解是指向當前分支最新版本的一個指標。 tags:一個指標,可以指向任意一個版本。但使用回滾功能時,會導致head指標往前移動。導致後面的一些提交丟失(即分支歷史記錄中沒有了)。此時如果在回滾前通過tags記錄了head指標指向的位

mysql刪除重複記錄並保留重複資料的一條資料的SQL語句理解

正好想寫一條刪除重複語句並保留一條資料的SQL,網上查了一部分資料寫的很詳細,但還是在這裡寫下自己的理解,以遍後續學習 。如下: 表字段和資料:  SQL語句:  DELETE FROM `user` WHERE id NOT IN(SELECT * FROM(

mysql的事務提交(commit)與(rollback)詳解

1.SQL概念 Structured Query Language- - -結構化查詢語言 有 資料定義語言(DDL),例如:CREATE、DROP、ALTER等語句; 資料操作語言(DML),例如:INSERT(插入)、UPDATE(修改)、DELETE(刪除)語句; 資料查詢語言(DQL

mysql倒入sql檔案source命令

對於匯入資料量比較小的資料我們可以直接使用mysql的圖形介面進行匯入,但是當資料量比較大時使用使用圖形介面就相對於慢很多了,於是我們可以使用mysql資料庫的一個命令source命令來進行資料的匯入

mysql建立約束語法建表時建表後

主鍵、外來鍵和索引的區別 定義: 主鍵--唯一標識一條記錄,不能有重複的,不允許為空 外來鍵--表的外來鍵是另一表的主鍵, 外來鍵可以有重複的, 可以是空值 索引--該欄位沒有重複值,但可以有一個空值 作用: 主鍵--用來保證資料完整性 外來鍵--用來和

Java事務的提交與

import java.sql.Connection;import java.sql.DriverManager;import java.sql.Statement;public class RollBack_test {    /**     * @param args     */    public s

spring事務控制的方法丟擲異常不

最近做專案時,由於業務需要,在service中丟擲自定義異常時出現了事務不回滾的情況,具體情況如下: public void editEpidemic(Epidemic epidemic) throws EpidemicException{

mysql根據“-”拆分字串並獲取當前小時轉數字

-- sql如下,就是判斷當前時間是否在某個時間段之間,時間段格式:9-12 SELECT * from table where (DATE_FORMAT( CURRENT_TIME() ,'%H' )+0)>=SUBSTRING_INDEX(order_time,'

js的函式封裝撥函式實現的簡單動畫效果

                   js實現的簡單動畫效果 一、js實現的簡單動畫       1、此程式碼中運用了js中的建構函式,函式封裝,回撥函式,函式內的正負值的判