Можно ли навесить индексы на все колонки для скорости?

Индексы создают под конкретные запросы и нагрузку — например, для колонок, которые часто используются в WHERE, JOIN или ORDER BY. Слишком большое количество индексов может, наоборот, ухудшить производительность базы.
Нет, индексы не стоит создавать на всех колонках подряд. Они ускоряют поиск и чтение данных, но занимают место и замедляют INSERT, UPDATE и DELETE, потому что при изменении данных индексы тоже нужно обновлять.
Да, чем больше индексов, тем быстрее работает база данных.