Úvod
MySQL je databázová aplikace, která organizuje data v tabulkách, které mají hodnoty uspořádané do řádků a sloupců. V MySQL index je datová struktura, díky které lze informace lépe vyhledávat.
Bez indexu MySQL čte celou tabulku, aby našel požadovaný řádek, a je velmi neefektivní.
Tato příručka vám ukáže, jak vytvořit index v MySQL pomocí CREATE INDEX prohlášení.
Předpoklady
- Stávající instalace MySQL
- Uživatelský účet MySQL s rootem nebo admin privilegia
- Přístup do příkazového řádku / okna terminálu:
- V systému Linux klikněte na Aktivity> Hledat> Terminál
- Ve Windows klikněte pravým tlačítkem na Start> Příkazový řádek (nebo Windows PowerShell)
MySQL Create Index Syntax
CREATE INDEX příkaz v MySQL používá následující formát:
mysql> CREATE INDEX [some_index] ON [some_table] ([some_column],[other_column]); some_index– Název indexusome_table– Název tabulky s indexovanými sloupcisome_column, other_column– Názvy sloupců, které mají být indexovány
MySQL vytvoří index v nové tabulce
Chcete-li vytvořit index současně, je tabulka vytvořena v MySQL:
1. Otevřete okno terminálu a přihlaste se do prostředí MySQL.
mysql -u username -p 2. Vytvořte a přepněte do nové databáze zadáním následujícího příkazu:
mysql> CREATE DATABASE mytest;
Query OK, 1 row affected (0.01 sec) mysql; USE mytest;
Database changed 3. Dále vytvořte sloupce v tabulce a indexujte je:
mysql> CREATE TABLE example (
col1 INT PRIMARY KEY,
col2 INT NOT NULL,
col3 INT NOT NULL,
col4 VARCHAR(20),
INDEX (col2, col3)
);
Příkaz vytvoří tabulku s názvem příklad , naplní jej 4 sloupci a přidá indexy pro sloupec 2 a sloupec 3.
4. Dále zobrazte seznam indexů z tabulky:
mysql; SHOW INDEXES FROM example; Měli byste vidět index pro PRIMARY, COL2 a COL3. I když nebyl zadán PRIMARY, MySQL automaticky vytvořila index pro primární klíč.
Přidat index do existující tabulky MySQL
Osvědčené postupy MySQL doporučují vytvořit index současně s vytvořením tabulky. Index však lze také přidat do existující tabulky. Níže uvedené pokyny vysvětlují, jak přidat index do existující tabulky MySQL.
1. Vytvořte novou tabulku zadáním následujícího příkazu:
mysql> CREATE TABLE example2 (
col1 INT PRIMARY KEY,
col2 VARCHAR(20),
col3 VARCHAR(20),
col4 VARCHAR(20)
);
Query OK, 0 rows affected (0.25 sec) 2. Dále zobrazte aktuální index pro příklad2 :
mysql> SHOW INDEXES FROM example2; Systém by měl zobrazit jeden index pro primární klíč.
3. Dále přidejte index pro sloupec2 a sloupec3 zadáním následujícího příkazu:
mysql> CREATE INDEX index1 ON example2 (col2,col3);
4. Zobrazte indexy pro příklad2 :
mysql> SHOW INDEXES FROM example2; Systém by nyní měl zobrazit index primárního klíče plus col2 a col3 uvedené v index1 .