原创 mysql實戰45講學習筆記--09
09普通索引和唯一索引應該怎麼選擇 查詢過程一般平均性能,對於選擇索引可以忽略不計。 更新過程 Change buffer,更新一個數據時,如果數據頁在內存中就直接更新,如果沒在內存中,不影響數
原创 mysql實戰45講學習筆記--13
13 爲什麼表數據刪掉一半,表文件大小不變? 數據庫表的空間回收 InnoDB表包含兩部分,即:表結構定義和數據,在mysql8.0以前,表結構是存在以.frm爲後綴的文件裏,而8.0版本,則
原创 mysql常用函數
原文鏈接:https://www.jb51.net/article/91641.htm 轉載自 https://www.jb51.net/article/91641.htm 控制流函數
原创 mysql實戰45講學習筆記--19
19 爲什麼我只查一行的語句,也很慢 建表語句,並且插入數據 mysql> CREATE TABLE t ( id int(11) NOT NULL, c int(11) DEFAULT NULL, PRIMARY KEY (i
原创 mysql實戰45講學習筆記--12
爲什麼我的mysql“抖”了一下 一條SQL語句,正常執行的時候特別快,但有時會突然變得特別慢,並且隨機,持續時間短。 將對應的內存數據寫入到磁盤的過程,叫做flush。 當內存數據頁
原创 Java Lambda表達式學習
原文地址:https://blog.csdn.net/renfufei/article/details/24600507 基本的Lambda循環 // Old looping for (String player : pl
原创 mysql實戰45講學習筆記--14
14 count(*)這麼慢,我該怎麼辦 Count()的實現方式 不同數據引擎,count()有不同實現方式 MyISAM引擎吧一個表的總行數存在磁盤上,因此執行count(*)直
原创 mysql實戰45講筆記--07
07 行鎖功過:怎麼減少行鎖對性能的影響 Mysql的行鎖是在引擎層由各個引擎自己實現的,不是所有數據庫都支持行鎖比如MyISAM 行鎖就是針對數據表中行記錄的鎖。 在InnoDB事
原创 mysql實戰45講筆記--08
08 事務到底是隔離的還是不隔離的 (理論,多讀) Mysql裏,有兩個“視圖”的概念 1.一個是view,他是一個用查詢語句定義的虛擬表,在調用的時候執行查詢語句並生成結果,創建視圖的語法是cre
原创 mysql實戰45將學習筆記--18
18 爲什麼這些sql語句邏輯相同,性能卻差距巨大 案例一:條件字段函數操作 維護一個交易系統,建表語句如下 mysql> CREATE TABLE tradelog ( id int(11) NOT
原创 mysql中concat,concat_ws,group_concat的用法
concat()函數可以連接一個或者多個字符串 CONCAT(str1,str2,…) 返回結果爲連接參數產生的字符串。如有任何一個參數爲NULL ,則返回值爲 NULL。 se
原创 mysql實戰45講學習筆記--15
15 日誌和索引相關問題 1.在兩階段提交的不同瞬間,mysql如果發生異常重啓,是怎樣保證數據完整性的。 如果在圖中A的地方,也就是寫入redo log處於prepare階段之後,寫binlog
原创 ,mysql實戰45講學習筆記--16
16 “Order by”是怎麼工作的 全字段排序 MySQL會給每個線程分配一塊內存用於排序,稱爲sort_buffer。 通常情況下,語句執行流程如下 1.初始化
原创 Effective java中對於枚舉的建議
枚舉和註解 1.用enum代替int常量 以前的int枚舉類型(public static final int APPLE_FUJI = 0)不具有安全性,也沒有描述性。Int枚舉是編譯時常量,很難將int枚舉常量
原创 Lambda雜記
流表面看起來和集合類似 1.流並不存儲其元素,這些元素可能存儲在底層的集合中,或者按需生成 2.流的操作不會修改其數據源 3.流的操作是儘可能的惰性執行,意味着直至需要結果時