2 資料庫調優二 count調優

2021-10-16 22:21:16 字數 1234 閱讀 8702

create table user_test_count

(id int primary key not null auto_increment,

name varchar(45),

age int,

email varchar(60),

birthday date

)engine 'innodb';

insert into user_test_count (id, name, age, email, birthday)

values (1,'張三','20','[email protected]','2000-01-01');

insert into user_test_count (id, name, age, email, birthday)

values (2,'','21','[email protected]','2000-01-02');

insert into user_test_count (id, name, age, email, birthday)

values (3,'','22','[email protected]','2000-01-05');

insert into user_test_count (id, name, age, email, birthday)

values (4,'','23','[email protected]','2000-01-07');

#1、當沒有非主鍵索引,會使用主鍵索引

#2、如果存在非主鍵索引,會使用非主鍵索引user_test_count_email_index

#3、如果存在多個非主鍵索引,會使用最小的乙個非主鍵索引user_test_count_birthday_index

#為什麼

/*innodb非主鍵索引:葉子節點儲存的是索引+主鍵

主鍵索引葉子節點:主鍵+表資料

在1個page裡面,非主鍵索引可以儲存更多的條目,對於一張表,1000000資料

使用非主鍵索引,掃瞄page100,主鍵索引500

*/explain

select count(*) from user_test_count;

#1、count(字段) 只會針對該欄位統計,同時會排除 null的行

#2、count(*)和count(1) 一樣

explain

select count(email) from user_test_count;

資料庫調優 2

3.2 基本表設計優化 在基於表驅動的資訊管理系統中,基本表的設計規範是第三正規化。第三正規化的基本特徵 是非主鍵屬性只依賴於主鍵屬性。基於第三正規化的資料庫表設計具有很多優點 一是能消除 冗餘資料 節省磁碟儲存空間 二是有良好的資料完整性限制 基於主外來鍵的參照完整限制 和基於主鍵的實體完整性限制...

資料庫調優之主機調優

學習資料庫需要對很多東西要理解,包括主機,儲存,資料庫,開發。特別調優。因此,資料庫設計的知識還是比較廣的,這篇文章主要是講解一下主機調優。我遇到過一些關於主機引起的資料庫問題,比如資料庫開啟後,資料庫的效能還可以,但是隨著時間增長,主機的記憶體就會耗得很多,資料庫就會變慢 還有就是io繁忙程度10...

資料庫調優

1 資料庫調優 計算機硬體調優 資料庫物件的放置策略 利用資料庫分割槽技術,均勻地把資料分布在系統的磁碟中,平衡i o 訪問,避免i o 瓶 頸 使用磁碟硬體優化資料庫 基本表設計優化 第三正規化的基本特徵 是非主鍵屬性只依賴於主鍵屬性。優點 一是能消除 冗餘資料 節省磁碟儲存空間 二是有良好的資料...