Problem

During a on-premise to cloud migration, I came across an error that I thought was strange. I was trying to restore a database from backup to a new Azure Database for MySQL instance.

During the restore I received the following error:

MySQL #1030 - Got error 1 from storage engine

Turns out, Azure Database for MySQL doesn't support the MyISAM engine, it only currently supports the InnoDB engine.

It seems Microsoft has decided that they will not support the MyISAM engine. I must say they have pretty good reasoning.

As mention earlier, we are explicitly not supporting MyISAM due to the lack of transaction support which can lead to cases of data loss.

Solution

The solution was easy enough, I opened up the latest database backup that I was trying to restore in my trusty editor and performed a find and replace for the following.

ENGINE=MyISAM 

ENGINE=INNODB

After that, I was able to successfully import my database backup and didn't have any further issues.

Photo by Olav Ahrens Røtne