Eu tive que fazer isso para um cliente. E fiz em uma aplicação com ASP.NET Core 1.0, mas por curiosidade tentei também para uma aplicação em .NET Core 2.0.
O que fiz foi primeiro instalar o pacote MySQL do Entity Framework de https://www. nuget.org/packages/Pomelo.EntityFrameworkCore.MySql/ usando o console do gerenciador de pacotes.
Depois disso eu mudei no startup.cs , no método ConfigureServices , a opção UseSqlServer para UsarMySql , como a imagem abaixo.

No meu appsettings.json eu tenho a conexão MySQL chamada IdentityConnection assim:
{
"ConnectionStrings": {
"IdentityConnection": "Server=127.0.0.1;Database=identitycoredb;Uid=root;Pwd=1234;"
},
Para criar as tabelas de identidade, executei o comando migration no console do gerenciador de pacotes:
EntityFrameworkCore\Update-Database -Verbose
