簡單結構:html
本質區別:mysql
用update的過程來理解(我的理解,可見極客時間的MySQL專欄 02 篇)算法
COMMIT:等同於 COMMIT WORKsql
示例數據庫
begin; insert into t select 1; savepoint t1; insert into t select 2; savepoint t2; release savepoint t1; insert into t select 2; ERROR 1062(23000):Duplicate entry'2'for key'PRIMARY' rollback to savepoint t2; select * from t; rollback;
能夠在 information_schema.innodb_trx
這個表中查詢長事務數組
# 查找持續時間超過 60s 的事務 select * from information_schema.innodb_trx where TIME_TO_SEC(timediff(now(),trx_started))>60;
搜索樹服務器
主鍵索引
查詢會只查詢主鍵索引數,經過非主鍵索引
查詢則會先查詢對應索引樹,再經過查找到的主鍵值查找主鍵索引數,該過程成爲回表
插入新值時:對於 B+ 樹,若插入的新紀錄比當前列最大值要大,則爲追加操做
,若小可能會觸發數據挪動
和頁分裂
框架
合併
。應用開發端來看:ide
數據庫端來看:工具