1. 程式人生 > >如何理解並正確使用 MySQL 索引

如何理解並正確使用 MySQL 索引

l數據庫 mys sql key nbsp scroll arch creat engine

1、概述

索引是存儲引擎用於快速查找記錄的一種數據結構,通過合理的使用數據庫索引可以大大提高系統的訪問性能,接下來主要介紹在MySql數據庫中索引類型,以及如何創建出更加合理且高效的索引技巧。

註:這裏主要針對的是InnoDB存儲引擎的B+Tree索引數據結構

2、索引的優點

1、大大減輕了服務器需要掃描的數據量,從而提高了數據的檢索速度

2、幫助服務器避免排序和臨時表

3、可以將隨機I/O變為順序I/O

3、索引的創建

3.1、主鍵索引

1 ALTER TABLE ‘table_name‘ ADD PRIMARY KEY ‘index_name‘ (‘column‘);

3.2、唯一索引

1 ALTER TABLE ‘table_name‘ ADD UNIQUE ‘index_name‘ (‘column‘);

3.3、普通索引

1 ALTER TABLE ‘table_name‘ ADD INDEX ‘index_name‘ (‘column‘);

3.4、全文索引

1 ALTER TABLE ‘table_name‘ ADD FULLTEXT ‘index_name‘ (‘column‘);

3.5、組合索引

1 ALTER TABLE ‘table_name‘ ADD INDEX ‘index_name‘ (‘column1‘, ‘column2‘, ...);

4、B+Tree的索引規則

創建一個測試的用戶表

1 2 3 4 5 6 7 8 DROP TABLE IF EXISTS user_test; CREATE TABLE user_test( id int AUTO_INCREMENT PRIMARY KEY, user_name varchar(30) NOT NULL, sex bit(1) NOT NULL DEFAULT b‘1‘,
city varchar(50) NOT NULL, age int NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

創建一個組合索引: ALTER TABLE user_test ADD INDEX idx_user(user_name , city , age);

如何理解並正確使用 MySQL 索引