salut
qu'est ce que tu as comme erreur ?
un timeout ,
oui les index permettent d'ameliorer les performances de ta base de données, mais encore faut-il quils soient bien fait, car ca peut aussi provoquer l'effet inverse.
de facon général les index permettent d'acceler de beaucoup les requetes selection et update, mais ralentissent un peu les requetes insert (et update quand tu mets a jour le champs sur lequel porte l'index)
pratiquement, un index "classe" les données pour que le systeme puisse les retrouver plus rapidement, un peu comme dans un dictionnaire...
quant a la création d'index, elle va dependre de ton SGBD d'une part, car il existe plusieurs type d'index, et des toutes les requetes qu vont acceder d'une facon ou d'une autre aux tables a indexer.