Cela dépend des opérations qui se produisent sur la table.
S'il y a beaucoup de SELECT et très peu de changements, indexez tout ce que vous voulez... cela accélérera (potentiellement) les instructions SELECT.
Si la table est fortement touchée par UPDATE, INSERTs + DELETEs ... ceux-ci seront très lents avec beaucoup d'index car ils doivent tous être modifiés à chaque fois qu'une de ces opérations a lieu
Cela dit, vous pouvez clairement ajouter beaucoup d'index inutiles à une table qui ne feront rien. Ajouter des index B-Tree à une colonne avec 2 valeurs distinctes sera inutile car cela n'ajoute rien en termes de recherche de données. Plus les valeurs d'une colonne sont uniques, plus elle bénéficiera d'un index.