Latest web development tutorials

MySQL Index

MySQL budować indeksy na efektywne działanie jest bardzo ważne, indeksy mogą znacznie zwiększyć szybkość pobierania MySQL.

Na przykład, jeśli rozsądny projekt i skorzystać z indeksu MySQL to Lamborghini, to nie ma opracowanie i wykorzystanie indeksu MySQL to trójkołowy.

Indeks wskazuje oddzielny indeks i indeks kombinacji. Oddzielny wskaźnik, który zawiera tylko jeden indeks kolumny, stół może mieć wiele oddzielnych indeksu, ale nie jest to wskaźnik kompozytu. Indeks kompozytu, to znaczy kabel zawierający wiele kolumn.

Podczas tworzenia indeksu, należy upewnić się, że wskaźnik jest stosowany w warunkach zapytań SQL (zazwyczaj jako warunek klauzuli WHERE).

W rzeczywistości, indeks jest również stół, który przechowuje klucz i indeks pola podstawowe i punkty, aby nagrać tabeli podmiotu.

Powyższy mówimy o korzyściach płynących z korzystania z indeksu, ale nadmierne korzystanie z indeksu spowoduje nadużycia. Dlatego wskaźnik ma też swoje wady: Choć indeks znacznie zwiększona szybkość zapytań, natomiast zmniejszy to szybkość aktualizowania tabeli, takich jak INSERT tabeli, UPDATE i DELETE. Ponieważ tabeli aktualizacji, MySQL jest nie tylko, aby zapisać dane, ale również zaoszczędzić około pliku indeksu.

Indeksowanie zajmuje miejsce na dysku w pliku indeksu.


Ogólny indeks

Utwórz indeks

Jest to indeks podstawowy, nie ma żadnych ograniczeń. Stworzyła z następujących sposobów:

CREATE INDEX indexName ON mytable(username(length)); 

Jeśli jest to CHAR, typ VARCHAR, długość może być mniejsza niż rzeczywista długość tej dziedzinie, jeśli typy BLOB i tekstu, należy określić długość.

Zmienić strukturę tabeli

ALTER mytable ADD INDEX [indexName] ON (username(length)) 

Po utworzeniu tabeli bezpośrednio określić

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
INDEX [indexName] (username(length))  
 
);  

Usuń składni indeksu

DROP INDEX [indexName] ON mytable; 

Unikalne Index

Jest ona podobna do poprzedniego indeksu ogólnego, to jest inna wartość kolumn indeksu musi być unikalna, ale umożliwiają swobodny wartość. Jeśli jest to kombinacja indeksu wartość kolumny musi być unikalne. Stworzyła z następujących sposobów:

Utwórz indeks

CREATE UNIQUE INDEX indexName ON mytable(username(length)) 

Zmienić strukturę tabeli

ALTER mytable ADD UNIQUE [indexName] ON (username(length)) 

Po utworzeniu tabeli bezpośrednio określić

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
UNIQUE [indexName] (username(length))  
 
);  

Użyj komendy ALTER dodawać i usuwać indeksów

Istnieją cztery sposoby dodawania tabeli danych index:

  • ALTER TABLE nazwa_tabeli ADD PRIMARY KEY (lista_kolumn ): Ta instrukcja dodaje klucz podstawowy, co oznacza, że wartość indeksu musi być niepowtarzalny i nie może być NULL.

  • ALTER TABLE nazwa_tabeli ADD UNIQUE nazwa_indeksu (lista_kolumn ): Ta instrukcja tworzy wartość indeksu musi być unikatowa (z wyjątkiem zewnętrznego NULL, NULL może pojawić się wiele razy).
  • ALTER TABLE nazwa_tabeli ADD INDEX nazwa_indeksu (lista_kolumn ): dodać normalny wskaźnik, wartość indeksu może wystąpić wiele razy.
  • ALTER TABLE nazwa_tabeli ADD nazwa_indeksu FULLTEXT (lista_kolumn ): To stwierdzenie określa indeks jest FULLTEXT, do indeksowania pełnotekstowego.

Poniższe przykłady dodanie indeksu w tabeli.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

Można również skorzystać z klauzuli DROP usunąć indeks w poleceniu ALTER. Wypróbuj poniższe przykłady, aby usunąć indeks:

mysql> ALTER TABLE testalter_tbl DROP INDEX (c);

Użyj komendy ALTER, aby dodać lub usunąć klucz podstawowy

działa wyłącznie na kolumnę klucza podstawowego, podczas dodawania indeks klucza podstawowego, należy upewnić się, że klucz domyślny pierwotne nie jest pusta (NULL). Przykłady są następujące:

mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL;
mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);

Można również użyć polecenia ALTER usunąć klucz podstawowy:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

Wystarczy określić klucz podstawowy Usuń określony czas, ale kiedy usunąć indeks, trzeba znać nazwę indeksu.


Indeks Wyświetlanie informacji

Można użyć polecenia SHOW INDEX notować informacje indeksu tabeli. Dodając \ G formatować dane wyjściowe.

Wypróbuj poniższe przykłady:

mysql> SHOW INDEX FROM table_name\G
........