API Gateway: Error "Storage engine 'MyISAM' does not support system tables" seen when importing database

book

Article ID: 209085

calendar_today

Updated On:

Products

CA API Gateway

Issue/Introduction

This article will discuss how to deal with a scenario where importing a database from a mysqldump on a different environment provides the following example error:

Storage engine 'MyISAM' does not support system tables. [mysql.user]

Cause

This occurs when the mysqldump taken from the source environment contains more than just the ssg database and contains all databases including the mysql system database.

Environment

This article applies to all supported versions of the API Gateway appliances where MySQL is included.

Resolution

Best solution

The best solution is to correct the issue at the source... the initial mysqldump command that was run. In other words running the mysqldump again from the source environment but in a way that exports only the ssg database and no other databases from MySQL. The following command should be run on the source and any additional parameters added to this command may result in the behaviour reported:

mysqldump ssg --routines > /home/ssgconfig/<source_Gateway>.sql

Be sure to substitute ssg for the name of your Gateway database if it differs from ssg, and replace <source_Gateway> with the name of the file you'll reference later.

Workaround

If the source environment is no longer accessible or other reasons prevent the best solution above from being executed, then the following workaround may work as well. The workaround in this case would be on the import side, running it with the -o or --one-database parameter to have the import command ignore other databases from the SQL file, such as the following:

mysql --one-database ssg < /home/ssgconfig/<source_Gateway>.sql

Additional Information

Documentation: