Когда речь идет о поддержании вашего SQL Server в актуальном состоянии, доступно несколько вариантов. Один из этих вариантов – применение накопительных обновлений (CUs). Однако возникли споры относительно надежности и поддержки этих обновлений.
В недавнем обсуждении Стив Джонс высказал обоснованную озабоченность относительно отсутствия поддержки со стороны Microsoft для накопительных обновлений. Он указал на то, что Microsoft явно указывает на каждой странице CU, что пользователи должны применять патч только в случае возникновения конкретных проблем. В противном случае рекомендуется дождаться следующего пакета обновлений.
Это вызывает значительную проблему. Пакеты обновлений для SQL Server (и большинства продуктов Microsoft) стали менее частыми с течением времени. Это означает, что доступно меньше исправлений ошибок, специфических для SQL Server. Хотя некоторые могут утверждать, что критических проблем не так много, есть важные, такие как повреждение данных, неточные наборы результатов и бесконечные циклы при работе с определенными представлениями динамического управления.
Так что, если вы рассматриваете применение накопительного обновления, вы столкнетесь с следующим заявлением от Microsoft: “Теперь доступен поддерживаемый пакет накопительного обновления от Microsoft. Однако он предназначен только для исправления проблем, описанных в этой статье. Применяйте его только к системам, испытывающим эти конкретные проблемы. Этот пакет накопительного обновления может пройти дополнительное тестирование. Поэтому, если вы не страдаете от каких-либо из этих проблем, мы рекомендуем вам дождаться следующего пакета обновлений SQL Server, который содержит исправления в этом пакете накопительного обновления.”
Теперь давайте на мгновение задумаемся о выпуске пакетов обновлений. Например, последний пакет обновлений, выпущенный для SQL Server 2008 R2, был 26 июля 2012 года. Это почти два года назад. Так что, стоит ли ждать следующего пакета обновлений? Согласно Microsoft, вы должны, если вы не “сильно пострадали”. Но что на самом деле означает “сильно пострадали”?
Если у вас возникают проблемы, такие как неточные наборы результатов из-за FULL JOIN с CROSS APPLY, повреждение данных, вызванное LOB-данными, или SQL Server блокируется при запросе выполняющихся процессов, эти проблемы можно считать серьезными. Однако язык, используемый Microsoft в своем заявлении о поддержке, оставляет место для толкования, что может быть раздражающим для клиентов.
Как клиент, вы ожидаете получить необходимую поддержку при применении обновлений. К сожалению, текущий язык, используемый Microsoft, предполагает подход “покупатель, будьте бдительны”. Это не идеальная ситуация для клиентов.
Существуют два потенциальных решения этой проблемы. Во-первых, Microsoft может усилить поддержку накопительных обновлений и отразить это в своем языке. Это даст клиентам больше уверенности при применении этих обновлений. Во-вторых, Microsoft может выпускать пакеты обновлений более регулярно, чтобы обеспечить своевременную доставку исправлений ошибок и улучшений.
Хотя неизвестно, будут ли реализованы одно из этих решений в ближайшем будущем, клиенты имеют право требовать лучшей поддержки и более частых выпусков пакетов обновлений. В конце концов, поддержание SQL Server в актуальном состоянии крайне важно для обеспечения стабильной и безопасной среды.