索引概述
在mysql中,索引由資料表中一列或多列組合而成,建立索引的目的是為了優化資料庫的查詢速度。其中,使用者建立的索引指向資料庫中具體資料所在位置。當使用者通過索引查詢資料庫中的資料時,不需要遍歷所有資料庫中的所有資料。這樣,大幅度提高了查詢效率。
mysql索引概述
1.索引是一種將資料庫中單列或者多列的值進行排序的結構。應用索引,可以大幅度提高查詢的速度。
2.使用者通過索引查詢資料,不但可以提高查詢速度,也可以降低伺服器的負載。
3.應用mysql資料庫時,並非使用者在查詢資料的時候,總需要應用索引來優化查詢。
4.整體來說,索引可以提高查詢的速度,但是會影響使用者運算元據庫的插入操作。
mysql索引分類
mysql的索引包括普通索引、唯一性索引、全文索引、單列索引、多列索引和空間索引等。
建立索引
建立索引是指在某個表中至少一列中建立索引,以便提高資料庫效能。其中,建立索引可以提高表的訪問速度。本節通過幾種不同的方式建立索引。其中包括在建立資料庫時建立索引、在已經建立的資料表中建立索引和修改資料表結構建立索引。
在建立資料表時建立索引
在建立資料表時可以直接建立索引,這種方式比較直接,且方便、易用。
基本語法結構如下:
create table table_name(
屬性名 資料型別[約束條件],
屬性名 資料型別[約束條件]
屬性名 資料型別
[unique | fulltext | spatial ] index }key
[別名]( 屬性名1 [(長度)] [asc | desc])
例子:普通索引
create table t_dept(
no int not null primary key,
name varchar(20) null,
*** varchar(2) null,
info varchar(20) null,
index index_no(no)
show index from info; 檢視索引
唯一索引
create table t_dept(
no int not null primary key,
name varchar(20) null,
*** varchar(2) null,
info varchar(20) null,
unique index index_no(no)
全文索引
create table t_dept(
no int not null primary key,
name varchar(20) null,
*** varchar(2) null,
info varchar(20) null,
fulltext index index_no(no);
多列索引
create table t_dept(
no int not null primary key,
name varchar(20) null,
*** varchar(2) null,
info varchar(20) null,
key index_no_name(no,name)
在已建立的資料表中建立索引
在mysql中,不但可以在使用者建立資料表時建立索引,使用者也可以直接在已經建立的表中,在已經存在的乙個或幾個字段建立索引。
其基本的命令結構如下:
create [unique | fulltext |spatial ] index index_name
on table_name(屬性 [(length)] [ asc | desc]);
例子:普通索引
create index index_name
on t_dept(name);
唯一索引
create unique index index_name
on t_dept(name);
全文索引
create fulltext index index_name
on t_dept(name);
多列索引
create index index_name_no
on t_dept(name,no)
修改資料表結構新增索引
修改已經存在表上的索引。可以通過alter table語句為資料表新增索引
基本結構如下:
alter table table_name add [ unique | fulltext |spatial ] index index_name(屬性名 [(length)] [asc | desc]);
例子:普通索引
alter table t_dept
add index index_name(name);
唯一索引
alter table t_dept
add unique index index_name(name);
全文索引
alter table t_dept
add fulltext index_name(name);
多列索引
alter table t_dept
add index index_name_no(name,no);
刪除索引
刪除索引
在mysql中,建立索引後,如果使用者不再需要該索引,則可以刪除指定表的索引。因為這些已經被建立且不常使用的索引,一方面可能會占用系統資源,另一方面也可能導致更新速度下降,這極大地影響了資料表的效能。所以,在使用者不需要該錶的索引時,可以手動刪除指定索引。其中刪除索引可以通過drop語句來實現。
基本的命令如下:
drop index index_name on table_name;
資料庫mysql索引 資料庫 mysql索引
mysql 索引 mysql索引的建立對於mysql的高效執行是很重要的,索引可以大大提高mysql的檢索速度。打個比方,如果合理的設計且使用索引的mysql是一輛蘭博基尼的話,那麼沒有設計和使用索引的mysql就是乙個人力三輪車。索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個表可...
資料庫mysql軟體安裝 資料庫軟體mysql安裝
2.解壓至欲安裝的目錄下 3.開啟cmd,進入軟體目錄下d qmdownload mysql 5.7.24 winx64 bin,執行mysqld 4.初始化使用者 cmd d qmdownload mysql 5.7.24 winx64 bin,執行mysqld initialize insecu...
mysql更新索引庫 Mysql資料庫索引增刪改查
一.索引的作用 一般的應用系統,讀寫比例在10 1左右,而且插入操作和一般的更新操作很少出現效能問題,遇到最多的,也是最容易出問題的,還是一些複雜的查詢操作,所以查詢語句的優化顯然是重中之重。在資料量和訪問量不大的情況下,mysql訪問是非常快的,是否加索引對訪問影響不大。但是當資料量和訪問量劇增的...