Сам столкнулся с проблемой кодировок. И на сколько я понял, SET NAMES ведь устанавливает кодировку данных. При этом сам файл .sql может быть в другой кодировке.
Например, в моём случае,
в Windows 10 при создании дампа через PowerShell 5.1 командой ".\mysqldump example > example.sql" создаётся файл в кодировке UTF16(всё зависит от настроек командной строки). Это можно проверить в углу Блокнота при открытии файла. При этом везде в настройках, в системных переменных Mysql будет UTF8.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.