Per i futuri ricercatori, ho scoperto che ottengo questo errore quando utilizzo una combinazione di MySQL Workbench e phpMyAdmin:se "copia SQL" dall'elenco delle tabelle, antepone il nome dello schema ai nomi delle tabelle nell'istruzione create (e nel comandi da chiave esterna che potrebbero farne parte).
La rimozione accurata del nome dello schema ha risolto questo problema per me.
Ad esempio:
CREATE TABLE IF NOT EXISTS `schema`.`table1` (
...blah blah blah...
CONSTRAINT `fk_user_id`
FOREIGN KEY (`user_id` )
REFERENCES `schema`.`table1` (`id` )
...blah blah blah...
dovrebbe essere cambiato in:
CREATE TABLE IF NOT EXISTS `table1` (
...blah blah blah...
CONSTRAINT `fk_user_id`
FOREIGN KEY (`user_id` )
REFERENCES `table1` (`id` )
...blah blah blah...