首頁 >資料庫 >mysql教程 >布爾教育燕十八mysql優化影片資料分享

布爾教育燕十八mysql優化影片資料分享

巴扎黑
巴扎黑原創
2017-08-31 11:12:191140瀏覽

目前資料庫是大多數系統進行資料儲存的基礎元件,資料庫的效率對系統的穩定性和效率有著至關重要的影響;為了有更好的使用者體驗,資料庫的最佳化顯得異常重要。那我們要從那些方面來對我們的資料庫進行最佳化呢?讓我們在《布爾教育燕十八mysql優化影片教學》這門課程中共同探討一起學習吧!

布爾教育燕十八mysql優化影片資料分享

影片播放位址:http://www.php.cn/course/200.html

本影片難度在於最佳化查詢功能,也就是對索引的使用:

1、選擇索引的資料類型

MySQL支援許多資料類型,選擇合適的資料類型儲存資料對效能有很大的影響。通常來說,可以遵循以下一些指導原則:

(1)越小的資料類型通常會更好:越小的資料類型通常在磁碟、記憶體和CPU快取中都需要更少的空間,處理起來更快。
(2)簡單的資料類型更好:整型資料比起字符,處理開銷更小,因為字串的比較更複雜。在MySQL中,應該用內建的日期和時間資料類型,而不是用字串來儲存時間;以及用整數資料類型儲存IP位址。
(3)盡量避免NULL:應該指定列為NOT NULL,除非你想儲存NULL。在MySQL中,含有空值的資料列很難進行查詢最佳化,因為它們使得索引、索引的統計資料以及比較運算更加複雜。你應該用0、一個特殊的值或一個空串來代替空值。

1.1、選擇標識符
選擇合適的標識符是非常重要的。選擇時不僅應該考慮​​儲存類型,而且應該考慮MySQL是怎麼進行運算和比較的。一旦選定資料類型,應該確保所有相關的表都使用相同的資料類型。
(1)    整數:通常是作為識別碼的最佳選擇,因為可以更快的處理,而且可以設定為AUTO_INCREMENT。

(2)    字串:盡量避免使用字串作為識別符,它們消耗更好的空間,處理起來也較慢。而且,通常來說,字串都是隨機的,所以它們在索引中的位置也是隨機的,這會導致頁面分裂、隨機存取磁碟,聚集索引分裂(對於使用叢集索引的儲存引擎)。

2、索引入門
對於任何DBMS,索引都是進行最佳化的最主要的因素。對於少量的數據,沒有合適的索引影響不是很大,但是,當隨著數據量的增加,效能會急劇下降。
如果對多列進行索引(組合索引),列的順序非常重要,MySQL只能對索引最左邊的前綴進行有效的尋找。例如:
假設存在組合索引it1c1c2(c1,c2),查詢語句select * from t1 where c1=1 and c2=2能夠使用該索引。查詢語句select * from t1 where c1=1也能夠使用該索引。但是,查詢語句select * from t1 where c2=2不能夠使用該索引,因為沒有組合索引的引導列,即,要想使用c2列進行查找,必需出現c1等於某值。

本課程講師是傳智播客著名講師劉道成,可能說劉道成你們不知道,但是說到燕十八你們肯定了解,劉道成就是燕十八。他的講課風格風趣幽默,課堂氣氛很好,可以很好的調動學生上課時的積極性,能讓大家有個輕鬆的學習氛圍。另外,他講課重點突出,讓你知道學習的重點在哪裡,回去專注學習。學習的難點也會講的非常詳細,盡量做到每個人都可以聽得明白。

以上是布爾教育燕十八mysql優化影片資料分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn