數據庫的操作越來越成爲整個應用的性能瓶頸了,這點對於 Web 應用尤其明顯。關於數據庫的性能,這並不只是 DBA 才需要擔心的事,而這更是我們程序員需要去關注的事情。當我們去設計數據庫表結構,對操作數據庫時(尤其是查表時的 SQL 語句),我們都需要注意數據操作的性能。這裏,我們不會講過多的 SQL 語句的優化,而只是針對 MySQL 這一 Web 應用最多的數據庫。希望下面的這些21個優化技巧對你有用。
額...額...額...有點犯懶,就不打字兒了,直接就把每一個的詳情內容截圖展示出來啦~
最佳實踐1:爲查詢緩存優化你的查詢
最佳實踐2:EXPLAIN 你的 SELECT 查詢
最佳實踐3: 當只要一行數據時使用 LIMIT 1
最佳實踐4:爲搜索字段建索引
最佳實踐5:在 Join 表的時候使用相當類型的例,並將其索引
最佳實踐6:千萬不要 ORDER BY RAND()
最佳實踐7:避免 SELECT *
最佳實踐8:永遠爲每張表設置一個 ID
最佳實踐9:使用 ENUM 而不是 VARCHAR
最佳實踐10:從 PROCEDURE ANALYSE() 取得建議
最佳實踐11:儘可能的使用 NOT NULL
最佳實踐12:Prepared Statements
最佳實踐13:無緩衝的查詢
最佳實踐14:把 IP 地址存成 UNSIGNED INT
最佳實踐15:固定長度的表會更快
最佳實踐16:垂直分割
最佳實踐17:拆分大的 DELETE 或 INSERT 語句
最佳實踐18:越小的列會越快
最佳實踐19:選擇正確的存儲引擎
最佳實踐20:使用一個對象關係映射器(Object Relational Mapper)
最佳實踐21:小心“永久鏈接”
接下來看看阿里P8必備的MySQL:基礎+索引+鎖+日誌+調優,你能答對的有多少?
- 基礎篇問題
- 索引篇問題
- 鎖篇問題
- 日誌問題
- 性能優化問題
題目有點多,答案也很多,下面的是全部的答案(總共有64頁呢....)
好吧,不管是上面的21個最佳實踐的文檔原件還是這個阿里P8MySQL的完整答案原件,我這裏都有~ 如果圖片看不清的話這邊提供免費領取下載這兩個源文件方式便好~
最後再來份MySQL全家桶(學習文檔+高頻知識+阿里P8+21實踐+調優),意下如何?
【點擊MySQL】免費分享給你這份MySQL全家桶(學習文檔+高頻知識+阿里P8+21實踐+調優)