@Snewer, если Вы выбираете (идентифицируете) пользователя по имени, значит на это поле надо, как минимум, наложить ограничение уникальности. А это, как ни крути - индекс. И да, выбирать пользователя по имени - это нормально.
Если количество строк небольшое - смысла в индексах не будет. Зато будет оверхед на создание/хранение/изменение этих индексов. И JOIN по строковому полю - это очень нехороший признак даже при наличии индекса. MySQL очень плохо перевариевает JOIN'ы, особенно внешние.