GilaMonster (3/19/2012)
1) SQL code changes2) Indexes
3) Application code changes
4) Database config changes
5) Hardware upgrades (IO predominately, very hard to max out a modern CPU with well-written code)
Restarting SQL is not a performance fix. If restarting SQL improves performance then there's some config or code problem that needs to be identified and resolved.
Agree completely that restarting SQL is a quick and even dirtier method of brushing problems under the rug, and with #5 not including CPU, to be honest I hesitated in mentioning either.
I'm surprised at # 4 however, what database-level changes have you found most involved with improving performance?