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

mysql查詢加入事務(wù),如何使用MySQL數(shù)據(jù)庫

傅智翔2年前24瀏覽0評論
mysql查詢加入事務(wù),如何使用MySQL數(shù)據(jù)庫?

主從架構(gòu)— —概念

binlog日志

MySQL的二進(jìn)制日志可以說是MySQL最重要的日志了,它記錄了所有的DDL和DML(除了數(shù)據(jù)查詢語句)語句,以事件形式記錄,還包含語句所執(zhí)行的消耗的時間。

復(fù)制原理

1. 主庫操作保留binlog日志

2. 從庫的IO線程從主庫拉取binlog日志,并生成中繼日志(relay log)

3. 從庫的SQL線程解析中繼日志,并在本身回放

狀態(tài)檢查

主要通過判斷IO線程和SQL線程是否處于Running判斷復(fù)制是否正常,判斷Seconds_Behind_Master參數(shù)代表數(shù)據(jù)同步是否延遲:

mysql> show slave status\G... Slave_IO_Running: YesSlave_SQL_Running: YesSeconds_Behind_Master: 0...

主從架構(gòu)— —衍生各種擴展的主從架構(gòu)

1. 一主多從

2. 雙主復(fù)制

3. 級聯(lián)復(fù)制

4. 等等

讀寫分離

大部分場景下,讀的頻率比寫的頻率會高很多。所以可以通過擴展多個SLAVE節(jié)點提高整體的使用性能。

數(shù)據(jù)備份

傳統(tǒng)的備份包括三種方式:

1. lvm snapshot(LVM快照備份)

2. mysqldump

3. Xtarbackup

那么要如何實現(xiàn)數(shù)據(jù)的一致性備份呢(一致性備份是所有數(shù)據(jù)/文件/磁盤 需要在同一個時間點進(jìn)行備份)

LVM SNAPSHOT

1. 執(zhí)行FTWRL(FLUSH TABLES WITH READ LOCK)

1.1上全局讀鎖(lock_global_read_lock)

1.2清理表緩存(close_cached_tables)

1.3上全局COMMIT鎖(make_global_read_lock_block_commit)

2. 執(zhí)行l(wèi)vcreate 創(chuàng)建lv快照.

3. UNLOCK TABLES解鎖

MYSQLDUMP

1. 開啟可重復(fù)讀事務(wù)隔離

2. 開啟事務(wù)

3. 建立數(shù)據(jù)快照(可以理解為select * from *)

4. 結(jié)束事務(wù)

XTRABACKUP

1. 不是整體采用備份鎖,只有特定階段。

2. indodb階段不需要加鎖,ACID的C(持續(xù)性)是通過Redo log實現(xiàn),通過線程增量記錄redo log實現(xiàn)。