SQL-MYISAM-001

ENGINE=MyISAM

MyISAM engine in install SQL

Joomla 4+ expects InnoDB. MyISAM cannot do foreign keys and is a poor default on modern MySQL.

ENGINE=MyISAMENGINE=InnoDB

Dies at Joomla 3 → 4J3: Works nativelyJ4: Changed behaviourJ6: Changed behaviourBC plugin: not applicableMechanical renameSQL / schema

Symptoms people search

foreign keys fail · install sql mysql 8 warning

Replace this code

Swap ENGINE=MyISAM for ENGINE=InnoDB.

Joomla 3

Remove or stop calling this

CREATE TABLE `#__lms_courses` (...) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Joomla 4 / 6

Use this instead

CREATE TABLE `#__lms_courses` (...) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

How to fix it

  1. 1Replace MyISAM with InnoDB in install and update SQL.
  2. 2Prefer utf8mb4.

Also known as

MyISAM · InnoDB

Related issues

Get in touch

Have a project in mind? Let's talk about it.

Tell us what you're building. Whether it's a new site, an online store, a mobile app, or something that needs AI under the hood, we'll get back to you within a business day.

Free consultation
No commitment, no pressure
Reply within 24 hours
Usually much faster

Prefer a direct conversation?

Request a project quote

Tell us about your project

Fill out the quick form and we'll reach out.