色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql bin-log

劉姿婷2年前9瀏覽0評論

MySQL是一種關系型數據庫管理系統,支持多種操作系統。它使用了一種名為binlog的二進制日志格式,對于數據庫的備份、恢復以及復制都有著重要的作用。

binlog(Binary log)是指MySQL服務器上的一種記錄日志的機制。當MySQL服務器完成一系列的數據庫修改操作,如插入、更新或刪除等,它就會把這些操作轉換成二進制日志文件,這個文件便稱之為binlog。注意,MySQL只會將committed(事務提交)的數據寫入binlog。

示例binlog的格式結構:
/*!*/;
# at 4
#170329  2:38:10 server id 1  end_log_pos 124 CRC32 0xbbf8a448     Rotate to mysql-bin.000003  pos: 4
# at 124
#180517 14:11:18 server id 1  end_log_pos 336 CRC32 0x6357db70     GTID    last_committed=0        sequence_number=1       rbr_only=yes
SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;
# at 336
#180517 14:11:18 server id 1  end_log_pos 565 CRC32 0xc9247e1f     Query   thread_id=5     exec_time=0     error_code=0
SET TIMESTAMP=1526555478/*!*/;
INSERT INTO `test` VALUES (1,'Tom')/*!*/;
# at 633
#180517 14:11:18 server id 1  end_log_pos 662 CRC32 0xd81f8a0b     Xid = 4
COMMIT/*!*/;

上例是binlog的格式結構示例,其中的每一行都有著重要的意義。第2行是binlog開頭,4表示binlog開始寫入的位置。第3~4行中的server id 1表示的是運行MySQL的服務器的唯一標識符。end_log_pos則表示該事務記錄在binlog中結束的位置。最后一行則是表示該事務的提交。

在MySQL服務器上使用binlog有多種作用,其中最常見的是用于數據的備份、恢復以及復制。在備份數據時,我們可以使用mysqldump命令,將binlog一起備份就能夠實現增量備份。當需要恢復數據時,我們可以將binlog文件加入到mysql命令行中,實現數據的回滾。

在多主復制、從從復制以及半同步復制中,我們通過復制binlog文件可以實現從主服務器或其他MySQL服務器同步數據副本的目的。對于MySQL的高可用性和容災性,binlog也有著至關重要的作用。