1、選取最適用的字段屬性
1)資料庫中的表越小,查詢效率越高,所以將表中字段的寬度設計的盡可能小
2)字段設定為not null,減少比較null值
3)對於省份與性別等,可定義為enum型別(數值型資料,處理速度比文字型別快)
2、適用連線(join)代替子查詢(sub-queries)
使用join減少mysql在記憶體建立臨時表來完成邏輯上的兩個步驟
3、使用聯合(union)代替手動建立的臨時表
使用union將多個select語句連線起來,select語句中欄位數目要相同
4、事務
1)保證資料的一致性和完整性(要麼都成功,要麼都失敗)
2)多個使用者同時使用相同的資料來源時,可以鎖定資料庫來提供一種安全的訪問方式
5、鎖定表
事務獨占性,在高併發是會影響資料庫的效能,產生嚴重的響應延遲
6、使用外來鍵
鎖定表資料關聯性差,可以使用外來鍵保證資料的關聯性
7、使用索引
1)索引是提高資料庫效能的常用方法,它可以令資料庫伺服器以 比沒有索引快得多的速度檢索特定的行,尤其是在查詢語句當中包含有max(), min()和orderby這些命令的時候,效能提高更為明顯
2)建立用於join、where判讀和order by排序等字段上,避免使用有大量重複的值的字段做索引
8、優化的查詢語句
1)相同型別的字段進行比較操作(char和varchar型別字段大小相同時可進行比較)
2)在建有索引的字段上盡量不使用函式進行操作
3)應該注意避免在查詢中讓mysql進行自動型別轉換,使得索引不起作用
資料庫優化 資料庫設計優化
一 索引優化 1.首先索引不是越多越好,要視情況而定。因為索引會降低insert和update的效率 insert和update有時可能會重建索引。2.乙個表的索參數量最好不要超過6個,擇優而建。3.專案上線後,根據使用者的查詢條件字段稍微調整資料庫中的字段索引。二 分表 1.縱切 根據表字段來且分...
MySQL 資料庫設計與優化
mysql 作為一款輕量級資料庫被越來越多的企業使用,特別是 mysql 的 innodb 的儲存引擎和 8.0 版本發布以來更是有了較大的提公升。本文將主要介紹 mysql 的主要設計原則和從不同層面對 mysql 資料庫進行優化,在符合業務需求的前提下提公升資料庫執行效率。本 chart 內容如...
MySQL 資料庫設計正規化 優化
設計關聯式資料庫時,遵從不同的規範要求,設計出合理的關係型資料庫,這些不同的規範要求被稱為不同的正規化。目前關聯式資料庫有六種正規化 第一正規化 1nf 第二正規化 2nf 第三正規化 3nf 巴斯 科德正規化 bcnf 第四正規化 4nf 和第五正規化 5nf,又稱完美正規化 各種正規化呈遞次規範...