前言
如今互聯網行業用的最多就是 MySQL,鑒于最近一次小的分享 , 然而研發人員對數據庫都只停留在CURD,特想就此做個整體的分享 , 希望對web研發者有用 , 希望下面的這些優化技巧對你有用 。
1、固定長度的表會更快
如果表中的所有字段都是“固定長度”的,整個表會被認為是 “”或 “fixed-” 。例如,表中沒有如下類型的字段: , TEXT,BLOB 。只要你包括了其中一個這些字段,那么這個表就不是“固定長度靜態表”了,這樣,MySQL 引擎會用另一種方法來處理 。
2、 盡可能的使用 NOT NULL
3、為搜索字段建索引
索引并不一定就是給主鍵或是唯一的字段 。如果在你的表中,有某個字段你總要會經常用來做搜索 , 那么,請為其建立索引吧 。
4、永遠為每張表設置一個 ID
5、避免*
從數據庫里讀出越多的數據,那么查詢就會變得越慢 。并且 , 如果你的數據庫服務器和 WEB 服務器是兩臺獨立的服務器的話,這還會增加網絡傳輸的負載 。
6、拆分大的或語句
如果你需要在一個在線的網站上去執行一個大的或查詢,你需要非常小心收獲不止sql優化pdf,要避免你的操作讓你的整個網站停止相應 。因為這兩個操作是會鎖表的收獲不止sql優化pdf,表一鎖住了,別的操作都進不來了 。
7、 從() 取得建議
8、千萬不要 ORDER BY RAND()
9、 無緩沖的查詢
10、 小心“永久鏈接”
“永久鏈接”的目的是用來減少重新創建 MySQL 鏈接的次數 。當一個鏈接被創建了,它會永遠處在連接的狀態,就算是數據庫操作已經結束了 。而且 , 自從我們的開始重用它的子進程后——也就是說,下一次的 HTTP 請求會重用的子進程,并重用相同的 MySQL 鏈接 。
11、把 IP 地址存成INT
12、

文章插圖

文章插圖
13、 選擇正確的存儲引擎
14、越小的列會越快
15、使用 ENUM 而不是
16、垂直分割
17、你的查詢
18、當只要一行數據時使用 LIMIT 1
19、使用一個對象關系映射器
20、在 Join 表的時候使用相當類型的例,并將其索引
21、為查詢緩存優化你的查詢
補充幾個面試官常問的MySQL面試題!
1、Mysql 的技術特點是什么?
Mysql 數據庫軟件是一個客戶端或服務器系統,其中包括:支持各種客戶端程序和庫的多線程 SQL 服務器、不同的后端、廣泛的應用程序編程接口和管理工具 。
2、SQL 標準定義的四個隔離級別為:3、Mysql 中使用什么存儲引擎?
答:表類型 , 數據使用各種技術存儲在文件中,技術涉及: 、 、、 and .
4、主鍵和候選鍵有什么區別?
表格的每一行都由主鍵唯一標識,一個表只有一個主鍵 。主鍵也是候選鍵 。按照慣例,候選鍵可以被指定為主鍵 , 并且可以用于任何外鍵引用 。
5、如何在 Unix 和 Mysql 時間戳之間進行轉換?
UNIX_TIMESTAMP 是從 Mysql 時間戳轉換為 Unix 時間戳的命令FROM_UNIXTIME 是從 Unix 時間戳轉換為 Mysql 時間戳的命令6、LIKE 和操作有什么區別?
LIKE 和 REGEXP 運算符用于表示^和% 。SELECT * FROM employee WHERE emp_name REGEXP "^b";SELECT * FROM employee WHERE emp_name LIKE "%b";7、Mysql 中有哪些不同的表格?
、Heap、Merge、、ISAM、 是 Mysql 的默認存儲引擎 。
8、如何顯示前 50 行?
在 Mysql 中,使用以下代碼查詢顯示前 50 行:SELECT*FROMLIMIT 0,50;9、MYSQL 數據表在什么情況下容易損壞?
服務器突然斷電導致數據文件損壞,強制關機,沒有先關閉 mysql 服務等 。
10、Mysql 中有哪幾種鎖?
總結
以上為大家展示的MySQL索引優化21個最佳實踐已經整理成PDF,感興趣領取的小伙伴可以 + 轉發后,私信【21】獲取上述學習筆記!喜歡文章記得我喲,感謝支持!重要的事情說三遍,轉發+轉發+轉發,一定要記得轉發哦?。。?
【連B數都搞不懂,還敢在簡歷上寫精通MySQL?】本文到此結束,希望對大家有所幫助 。
- 大數據可以有多可怕?
- ?發明飛機的兄弟都是誰
- 衛生間怎么做干濕分離
- 心理學
- 為什么中國的孩子缺乏想象力?原來都是早教惹的禍
- 女教師行使批評權,被連夜約談,這不僅僅是一種官僚主義
- 李玫瑾:孩子教育分4個階段,家長要把握好,孩子一生都會有出息
- Excel 中的文本數字,必須按數值的規則排序?是不是有點強人所難
- ?如何評價金武林
- 墨家代表人物都有誰
