Это, безусловно, отношение многих ко многим, и я бы использовал составной первичный ключ.
Вместо использования явного столбца идентификатора я бы сделал объединенные столбцы user_id и follower_id первичным ключом для таблицы последователей. Это позволит избежать дублирования записей.
Также я добавил ограничение внешнего ключа, чтобы в случае удаления пользователя из таблицы пользователей все записи пользователей были удалены из таблицы последователей;
create table followers
(
user_id int unsigned not null,
follower_id int unsigned not null,
primary key(user_id,follower_id),
foreign key(user_id) references users(id) on delete cascade on update cascade
);