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

Jak przekonwertować wszystkie tabele z MyISAM do InnoDB?

Uruchom tę instrukcję SQL (w kliencie MySQL, phpMyAdmin lub gdziekolwiek), aby pobrać wszystkie tabele MyISAM w Twojej bazie danych.

Zastąp wartość name_of_your_db zmienna z nazwą Twojej bazy danych.

SET @DATABASE_NAME = 'name_of_your_db';

SELECT  CONCAT('ALTER TABLE `', table_name, '` ENGINE=InnoDB;') AS sql_statements
FROM    information_schema.tables AS tb
WHERE   table_schema = @DATABASE_NAME
AND     `ENGINE` = 'MyISAM'
AND     `TABLE_TYPE` = 'BASE TABLE'
ORDER BY table_name DESC;

Następnie skopiuj dane wyjściowe i uruchom jako nowe zapytanie SQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy MySQL może podzielić kolumnę?

  2. Jaki jest odpowiednik ELT() w SQL Server w MySQL?

  3. Kod błędu:1005. Nie można utworzyć tabeli „...” (errno:150)

  4. Jak połączyć się z bazą danych MySQL lub MariaDB

  5. Instrukcja wyboru MySQL z CASE lub IF ELSEIF? Nie wiesz, jak uzyskać wynik