Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Co oznacza tabela, która nie obsługuje optymalizacji, zamiast tego oznacza wykonanie odtwarzania + analizy?

To naprawdę wiadomość informacyjna.

Prawdopodobnie robisz OPTYMALIZUJ na InnoDB tabela (tabela wykorzystująca silnik przechowywania InnoDB, a nie MyISAM silnik pamięci masowej).

InnoDB nie obsługuje OPTYMALIZACJI tak, jak robi to MyISAM. Robi coś innego. Tworzy pustą tabelę i kopiuje do niej wszystkie wiersze z istniejącej tabeli oraz zasadniczo usuwa starą tabelę i zmienia nazwę nowej tabeli, a następnie uruchamia ANALIZA w celu zebrania statystyk. To najbliżej, jak InnoDB może się zbliżyć do wykonania OPTYMALIZACJI.

Wiadomość, którą otrzymujesz, to w zasadzie serwer MySQL, który powtarza to, co silnik pamięci masowej InnoDB powiedział serwerowi MySQL:

Tabela nie obsługuje optymalizacji to silnik pamięci masowej InnoDB, który mówi...

„Ja (silnik pamięci masowej InnoDB) nie wykonuję operacji OPTYMALIZACJI, jak robi to mój przyjaciel (silnik pamięci masowej MyISAM)”.

„zamiast tego odtwarzaj + analizuj” to silnik pamięci masowej InnoDB, który mówi...

„Postanowiłem wykonać inne zestaw operacji, które dadzą równoważny wynik."



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd Rubiego mysql2

  2. Jak wykonać skrypt .sql z bash

  3. Jak wyłączyć opcję only_full_group_by w Laravel?

  4. Wybieranie rekordów w kolejności identyfikatora rodzica

  5. Najlepszy sposób na bezpieczne połączenie z MySQL za pomocą PHP