Ошибка дублирования MySQL с ALTER IGNORE TABLE
У меня есть таблица в моем MySQL с дубликатами. Я пытаюсь удалить дубликаты и сохранить одну запись. У меня нет первичного ключа
Я могу найти дубликаты:
select user_id, server_id, count(*) as NumDuplicates
from user_server
group by user_id, server_id
having NumDuplicates > 1
Но не могу удалить их с помощью:
ALTER IGNORE TABLE `user_server`
ADD UNIQUE INDEX (`user_id`, `server_id`);
Четный SET foreign_key_checks = 0; не работает. Код ошибки: 1062. Дублирующая запись '142-20' для ключа 'user_id_3'
Версия MySQL: 5.5.18 Движок: InnoDB
Есть ли другой способ?