Kort svar, ja det kan man göra själv om man har standard eller enterprise versionen av sql server.
Om ni kör sql server standard eller enterprise så följer sql server profiling tools med. Om ni kör sql server express eller workgroup så får ni installera det verktyget från en standard eller enterprise installation eller köra det från en standard eller enterprise server.
Vad profiling innebär är att man spelar in all (relevant) databasaktivitet, vilka frågor som körs, vilka stored procedures som körs osv. Detta är väldigt enkelt. Man kan spara loggen till en tabell i valfri databas eller till loggfil.
När profiling har körts ett bra tag och man har representativ data då är det dags att köra analysverktyget. Låt det stå på under lunchrasten (tar lång tid!) och när det är klart presenterar det vilka index som skall införas, respektive vilka som ska tas bort.
Om ni inte kan göra detta så får ni gå igenom era frågor och tabeller och klura ut vart det behövs index, men det blir såklart svårare. Kolla era frågors execution plan, blir det många tablescans eller liknande flaskhalsar? Där sådant inträffar är det smart att lägg index.
Kontrollera att databasen är korrekt normaliseras.
Bra texter:
http://www.sommarskog.se/
Det finns många fler tips, bara att googla =)