Dit is niet gerelateerd aan ASP.NET Identity of ASP.NET Core. Dit heeft te maken met het Entity Framework in het algemeen. Wanneer je een database bijwerkt, gebruikt EF de __EFMigrationsHistory
om vast te leggen welke migraties zijn uitgevoerd, zodat deze in de toekomst niet opnieuw worden uitgevoerd.
Deze functionaliteit wordt geïmplementeerd door de databaseprovider , niet EF zelf. Er was ten minste één geval waarin de Npgsql-provider voor PostgresSQL de tabel niet heeft gemaakt .
De oplossing is eenvoudig - maak zelf de tafel:
CREATE TABLE `__EFMigrationsHistory`
(
`MigrationId` nvarchar(150) NOT NULL,
`ProductVersion` nvarchar(32) NOT NULL,
PRIMARY KEY (`MigrationId`)
);
UPDATE
Er was een andere vergelijkbare vraag in 2016. Dit is een bug van de officiële MySQL-provider. De oplossing is om de tabel te maken. Ook niet de enige. Asynchrone bewerkingen worden vervalst door ze bijvoorbeeld op een andere thread uit te voeren.
Ik raad je aan om externe MySQL-providers te onderzoeken, zoals Pomelo.EntityFrameworkCore.MySql . Ze gevonden en opgelost de bug in de migratiegeschiedenis 1 jaar geleden.
Aangezien de eigenaar van MySQL Oracle is , verwacht niet veel vooruitgang op de connector. Of de databank.