Mohu optimalizovat nebo opravovat tabulky v databázi?

Ano, po přihlášení k webmysql.forpsi.com máte možnost označit požadované tabulky a výběrem ze seznamu (nachází se pod výpisem tabulek) provést následující akce:
  • Zkontrolovat tabulku (CHECK TABLE)
  • Opravit tabulku (REPAIR TABLE)
  • Optimalizovat tabulku (OPTIMIZE TABLE)
  • Analyzovat tabulku (ANALYZE TABLE)
Příkazy REPAIR a OPTIMIZE spouštíme vždy při zálohování databází. Pokud se data často mění, je vhodné jejich pravidelné spouštění na příslušných tabulkách (toto lze provádět i přes php skript - v závorce u seznamu jsou i SQL příkazy pro použití v php skriptu). Podrobnější informace najdete na stránkách dokumentace MySQL.

!!! POZOR !!! Spuštěním uvedených příkazů nedojde k optimalizaci dotazů použitých při generování Vaší webové stránky. Pokud se Váš web načítá pomalu, je potřeba ověřit, zda jsou tyto dotazy správně zaindexované. To provedeme spuštěním SQL dotazu EXPLAIN (původní dotaz), například:

EXPLAIN SELECT nadpis FROM clanky WHERE id = 1;
který vrátí:
+----+-------------+---------+-------+---------------+---------+---------+-------+------+-------------+
| id | select_type | table   | type  | possible_keys | key     | key_len | ref   | rows | Extra       |
+----+-------------+---------+-------+---------------+---------+---------+-------+------+-------------+
|  1 | SIMPLE      | clanky  | ALL   | NULL          | NULL    | NULL    | NULL  | 8135 | Using where |
+----+-------------+---------+-------+---------------+---------+---------+-------+------+-------------+

- nejsou tedy použité žádné indexy a při jeho vykonání se prochází celá tabulka (8135 řádků).

Po přidání indexu v rozhraní webmysql.forpsi.com nebo pomocí SQL ALTER TABLE `clanky` ADD INDEX ( `id` );

vrátí stejný dotaz EXPLAIN SELECT nadpis FROM clanky WHERE id = 1;
+----+-------------+--------+------+---------------+---------+---------+-------+------+-------+
| id | select_type | table  | type | possible_keys | key     | key_len | ref   | rows | Extra |
+----+-------------+--------+------+---------------+---------+---------+-------+------+-------+
|  1 | SIMPLE      | clanky | ref  | PRIMARY       | PRIMARY | 4       | const |    1 |       |
+----+-------------+--------+------+---------------+---------+---------+-------+------+-------+

- při vykonání dotazu se již použije index sloupce "id" a přistoupí se pouze k jednomu řádku.