innodb和myisam資料庫引擎的區別
對比項innodb
myisam事務√
×外來鍵√×
索引聚集索引,使用b+tree作為索引結構,資料檔案是和(主鍵)索引綁在一起,5.7以前的innodb不支援全文索引支援全文索引,在涉及全文索引領域的查詢效率上myisam速度更快高
主鍵必須有主鍵(使用者沒有指定的話會自己找或生產乙個主鍵)
可以沒有
儲存檔案
frm、ibd
frm、myd、myi
mysql怎麼樣去建立和優化索引
對於查詢頻率高的字段建立索引
索引的數目不宜太多
選擇唯一性索引
盡量使用資料量少的索引
刪除不再使用或者很少使用的索引
可以使用explain檢測索引是否被啟用
3 分庫分表資料庫的主鍵如何生成
4 mysql悲觀鎖和樂觀鎖是什麼意思,分別適合什麼場景
悲觀:每次拿資料都上鎖,適合寫多
樂觀:只是更新時候上鎖,適合讀取多,寫少
資料庫相關知識
1儲存過程和函式的區別 儲存過程是使用者定義的一系列sql語句的集合,涉及特定表或其它物件的任務,使用者可以呼叫儲存過程,而函式通常是資料庫已定義的方法,它接收引數並返回某種型別的值並且不涉及特定使用者表。1.事務是什麼?事務是作為乙個邏輯單元執行的一系列操作,乙個邏輯工作單元必須有四個屬性,稱為 ...
資料庫索引相關知識
查詢條件欄位和排序字段,新增聯合索引,查詢條件欄位在聯合索引的前面 整數型別比字元型別處理開銷更小 盡量避免null,應該指定列為 not null,使用乙個特殊的值 0,或者空值 來代替null 含有null的列很難進行查詢優化,建立索引的原則 1.對於查詢中很少涉及的列或者重複值比較多的列,不要...
資料庫的相關知識
儲存過程是一些預編譯的sql語句,直白的說儲存過程是乙個記錄集,它是由一些sql語句組成的 塊,這些 塊想乙個方法一樣實現一些功能,然後再給這個 塊起乙個名字,在用到這個功能的時候呼叫.儲存過程是乙個與編譯的 塊,執行的效率比較高 儲存過程替代了大量的sql語句,降低了網路通訊量,提高通訊速率,一定...