Mysql那些事兒

2021-09-16 14:23:10 字數 712 閱讀 1340

1、limit m,n如何優化?

2、mysql 四種隔離級別

隔離級別

髒讀不可重複讀

幻讀未提交讀

可能可能

可能已提交讀

不可能可能

可能可重複讀

不可能不可能

可能可序列化

不可能不可能

不可能

1.未提交讀(read uncommitted):允許髒讀,也就是可能讀取到其他會話中未提交事務修改的資料

2.提交讀(read committed):只能讀取到已經提交的資料。oracle等多數資料庫預設都是該級別 (不重複讀)

3.可重複讀(repeated read):可重複讀。在同乙個事務內的查詢都是事務開始時刻一致的,innodb預設級別。在sql標準中,該隔離級別消除了不可重複讀,但是還存在幻象讀

4.序列讀(serializable):完全序列化的讀,每次讀都需要獲得表級共享鎖,讀寫相互都會阻塞

1.髒讀 :乙個事務讀取到另一事務未提交的更新資料

2.不可重複讀 : 在同一事務中,多次讀取同一資料返回的結果有所不同, 換句話說, 後續讀取可以讀到另一事務已提交的更新資料.

3.可重複讀 : 在同一事務中多次讀取資料時, 能夠保證所讀資料一樣, 也就是後續讀取不能讀到另一事務已提交的更新資料。

4.幻讀 :乙個事務讀到另乙個事務已提交的insert資料

MySql 那些事兒 日誌

類別 二進位制日誌 binlogmysql的二進位制日誌是我們平時最常用的日誌,他記錄了我們事務中sql語句執行的資訊 回滾日誌 undolog邏輯格式的日誌,在執行undo的時候,僅僅是將資料從邏輯上恢復至事務之前的狀態,而不是從物理頁面上操作實現的,這一點是不同於redo log的。undo是在...

MySQL儲存引擎的那些事兒

關於mysql的儲存引擎主要使用到的有以下三種 myisam 對事務要求不高,以新增和插入操作為主 innodb 對事務的要求比較高,所儲存的資料都是重要資料 memory 資料變化頻繁,並且不需要入庫,速度極快 其中myisam和innodb的主要區別如下 事務安全 myisam不支援事務安全,而...

Mysql那些事兒之(八)索引

一 用alter語句建立與刪除索引 索引有一下三種情況 index 普通的索引,索引的列可以包含重複的值。unique 唯一索引,保證了索引的列不包含重複的值。primary key 它是乙個具有primary 的unique索引。這表示乙個表只能包含乙個primary key。alter tabl...