Несколько лет назад у меня был клиент, у которого были некоторые проблемы с производительностью приложения. Моя коллега и я изолировали плохо работающий экземпляр базы данных в их промежуточной среде в качестве одной из причин.
В их производственной среде использовался экземпляр Sql Server 2000 с базой данных, которая существовала 4 или 5 лет; на их промежуточном сервере баз данных работал Sql Server 2005, на котором была восстановлена резервная копия их производственной базы данных. Наши тесты показали, что промежуточный сервер стабильно работал значительно хуже, чем производственный.
Мы устранили различия в оборудовании, установив экземпляры Sql Server 2000 и 2005 на новую машину и восстановив одну и ту же резервную копию на обоих компьютерах. Убедившись, что между экземплярами на новом компьютере существует аналогичное несоответствие производительности, мы выполнили проверки согласованности и перестроили индексы безрезультатно. Мы обнаружили, что создание новой базы данных в экземпляре 2005 года с идентичной схемой и перенос только данных устраняет несоответствие производительности. Исходя из обстоятельств, мы решили, что нет необходимости продолжать заниматься этим вопросом.