Каковы причины все еще использовать SQL Server 2000?

10

Из вопросов о StackOverflow и других местах я замечаю, что все еще есть люди, использующие SQL Server 2000. Честно говоря, самое большое влияние на меня заключается в том, что я должен помнить, как мы привыкли делать вещи без выражений Common Table.

Тем не менее, я хотел бы знать, есть ли реальные причины (помимо «он не сломан») по-прежнему использовать SQL Server 2000. Например, я знаю, что есть люди, которые должны использовать .NET 1.1, потому что они должны поддерживать Системы Windows 2000. Существуют ли подобные практические причины не обновлять систему SQL Server 2000 до SQL Server 2008 или 2005?

Джон Сондерс
источник
Я полностью сбит с толку понижением. Я хотел понять причины. У меня есть отличные ответы. Если есть проблема с вопросом, то, пожалуйста, не думайте, что я знаю, в чем проблема - скажите мне! Я обычно не кусаюсь через Интернет.
Джон Сондерс
Я думаю, что основная проблема в том, что если вы не будете постоянно обновлять программное обеспечение, вы лишите системных администраторов работы! Бу тебе, сэр!
Ник Кавадиас

Ответы:

14

Деловой ум обычно сильно отличается от вашего. Зачем использовать что-то более новое, если это не принесет больше дохода, а только расходы (миграция, переподготовка и т. Д.)?

вдохновитель
источник
1
Правда, и все, что они не могут измерить, является проблемой. Как вы оцениваете тот факт, что новые разработчики предпочитают не работать над программным обеспечением восьми лет; что примеры все чаще не работают на SQL Server 2000, и что отсутствие функций мешает разработке соответствовать новым требованиям?
Джон Сондерс
1
Это так. К сожалению, многие магазины предпочитают лгать о технологиях, которые они используют, чтобы ловить рыбу, чтобы работать на них.
вдохновитель
1
В компаниях, где ИТ-отделы говорят финансовому директору (или даже HR!), Услышать и понять дело - самая трудная часть. Разговаривая недавно с генеральным директором, он сказал, что его проблема в том, что многие разработчики просто хотят новых игрушек и не могут объяснить экономическое обоснование, если оно действительно есть. Старшее руководство не полностью доверяет их ИТ.
Дан
2
@ Дэн, мы должны признать, что хотим новых игрушек. :) Но есть реальная причина: мы хотим идти в ногу с технологиями, чтобы сохранить или увеличить нашу ценность на рынке труда. Это, однако, анти-дело для вашего нынешнего генерального директора.
вдохновитель
@Mastermind - я уверен, вы понимаете, почему это плохие причины для компании, которая в противном случае довольна своей нынешней платформой, инвестировать в обновление.
Роб Мойр
8

Лучшая причина, о которой я могу подумать, - это вариант «он не сломан», который выглядит следующим образом: у вас есть бизнес-приложение, которое работает с SQL 2000, но генерирует ошибки с SQL 2005. Это может быть неправильным бизнес-приоритетом для вашей организации. в это время, чтобы открыть капот этого приложения (которое не сломалось) и заставить его работать с более новой базой данных.

Брайан Райтер
источник
Спасибо, а что за ошибки? Я не мог придумать ничего, что могло бы работать в 2000 году, но не в 2005 году.
Джон Сондерс
6
См. Serverfault.com/questions/30499/sql2005-vs-sql2008/30512#30512 для обнаружения проблемы, которую мы обнаружили при первом перемещении одного из наших приложений из SQL2000 в SQL2005. Никогда не следует обновлять системный компонент вслепую, не проверив сначала тщательно приложения в новой версии (или не попросив ваших поставщиков на бумаге и подписать, что они провели такое тестирование).
Дэвид Спиллетт
4

Устаревшая поддержка

SQL Server 2005 не полностью обратно совместим с SQL Server 2000. Службы Analysis Services имеют серьезные несовместимости. Переход на SQL Server 2005 требует ненулевых затрат от регрессионного тестирования и портирования. Во многих организациях нет необходимости перемещаться, поэтому они не будут перемещаться, пока не будут вынуждены это сделать.

Большинство поставщиков СУБД (включая MS) будут поддерживать версию СУБД в течение 10 лет или около того, что дольше, чем у большинства других типов программного обеспечения. Если вы скрестите их ладони с серебром (в достаточном количестве), они также будут заключать специальные контракты, чтобы продлить поддержку на конкретную версию дольше.

Другие причины придерживаться более старых версий в действительности обусловлены конкретными обстоятельствами, такими как отказ от известного испорченного выпуска (например, MySQL 5.1 или SQL2000 до SP3) или проблемы с сертификацией или совместимостью.

Ведение производственной базы данных SQL Server 2000

Для операционной системы, которая работает и находится на зрелой фазе своего жизненного цикла без значительных серьезных изменений, вероятно, нет веских причин для обновления до того, как СУБД выйдет из основной поддержки. Тем не менее, вы должны запланировать упорядоченный путь обновления для такой возможности. Оракул довольно известен людьми, поддерживающими производственные системы на древних версиях.

SQL Server 2000 подходит к концу, поэтому вам не захочется заниматься новыми разработками. Тем не менее, производственное приложение должно поддерживаться с планом, который необходимо удалить, когда это необходимо. Возможно, вам придется переписать, если ваше приложение написано на VB6 или классическом ASP - но это другая проблема; -}.

Корпус счетчика

Если бы у меня был проект «с нуля», я бы обычно рекомендовал последнюю версию платформы СУБД просто потому, что она дает вам самое длинное окно поддержки от поставщиков. Никто не должен иметь SQL Server 2000 в качестве корпоративного стандарта для новых проектов - EOL слишком близок. Для нового проекта это самый сильный аргумент для перехода на более новую версию. Аргументы в пользу экономии денег не выдерживают критики; приложение будет нести ненужные расходы на перенос в течение нескольких лет, если вы начнете на SQL2000 сейчас.

Ключевым моментом для новой работы является то, что чрезмерно консервативный выбор сокращает срок службы приложения до того, как потребуется обновление. Обычно хотелось бы иметь конкретную причину не использовать текущую версию платформы СУБД.

ConcernedOfTunbridgeWells
источник
3

Мы не обновляем, потому что у нас есть финансовое программное обеспечение, которое зависит от него, и поставщик только думает о поддержке этого нового «SQL 2005», о котором они недавно слышали сумасшедший детский блог.

Откровенно говоря, это причиняет боль мне , чтобы смесь вещества для поддержки, но не так сильно , как это будет больно все в компании , чтобы иметь проблемы с финансовой системой всплывал, а затем , чтобы иметь точку финансов производителя программного обеспечения у нас и Смеемся, когда мы обратились за помощью и упомянули, что проблемы начались с тех пор, как мы обновили SQL до того, как они его ратифицировали.

Есть также много чего сказать, чтобы не исправить вещи, если они на самом деле не сломаны. Я действительно хочу обновить все свои SQL-серверы до 2008 года ... Я действительно это делаю. Но я мог бы сделать гораздо больше вещей, которые на самом деле улучшают итоги бизнеса такими способами, которые понятны и поддаются количественной оценке для моих менеджеров и пользователей ... ну, это всегда будет первым.

Вы упоминаете разработчиков, которым не нравится работать с SQL 2000, в своем ответе на ответ Mastermind. Я подозреваю, что одним из методов борьбы с этим будет тот, который мои начальники будут использовать для меня, если я решу, что мне «не нравится» поддержка SQL 2000: «Спасибо за ваше время, проведенное здесь, дверь слева от вас». В конце дня нам всем платят за то, чтобы все работало, нравится нам это или нет.

Роб Моир
источник
3

В нашем случае речь идет не столько о «зачем продолжать использовать 2000», сколько о «сколько стоит обновление?». Большинство наших приложений не используют ничего, что требовало бы каких-либо специфичных для 2005 года функций, поэтому нет веских причин, и, вероятно, не будет, пока Microsoft не прекратит поддержку этого.

RainyRat
источник
Вы можете получить выгоду от обновления (до SQL 2008), даже если приложения не используют специфический код SQL 2005, и это только путем активации сжатия данных (см. Мой предыдущий пост). И вы можете уменьшить блокировки во время большой нагрузки, активировав «управление версиями строк». Еще одна вещь, о которой стоит подумать: когда вы покупаете или создаете другое приложение, использующее специальный код SQL 2005/2008, хотите ли вы поддерживать две разные среды? И мой последний аргумент в этом комментарии, вы можете перестроить свои индексы онлайн, без необходимости окна службы. Это будет иметь эффект сразу. / Хакан Винтер
Хакан Винтер
3

Стоимость.

Более новое программное обеспечение - все еще дополнительное программное обеспечение, которое стоит дополнительных денег.

Это может быть и часто является ложной экономией из-за многих недостатков использования устаревших систем, но это единственная реальная причина, которая имеет смысл.

Клин
источник
Хуже того, у Microsoft, похоже, нет цены на обновление для SQL Server, поэтому каждая новая версия является полной стоимостью даже для существующих клиентов. Кто-нибудь, пожалуйста, скажите мне, что я не прав? :-(
Крис В. Ри
Вы не ошибаетесь, если только вы не приобрели Software Assurance при первоначальной покупке.
SqlACID
3

Новая лицензия на SQL Server 2008 (стандартная) стоит чуть менее 2000 долларов за 1 сервер с 5 клиентскими лицензиями или 6000 долларов за 1 лицензию на процессор. Я слышу, как мой старый босс говорит: «Это не сломано, но сколько будет стоить модернизация этих двух серверов?» (в то время 2 x двухъядерных процессора, требующих лицензий на процессор).

Используя SQL2000 в течение семи лет, мой первый опыт 2005 года был в среде VMWare ESX. Производительность снизилась (провайдер предоставил экспертные знания VMWare, и когда мы начали нагрузочное тестирование, мы обнаружили, что у них были серьезные проблемы не только с нашим сервером, но и повлияли на наш опыт), и в сочетании со всем, что перемещалось / переименовывалось (старый менеджер предприятия был ооочень намного быстрее) - мы были счастливее отложить обновление. Тогда мы ждали выхода 2008 года, поэтому мы только сейчас обновляем его до 2008 года (или переносим некоторые данные в MySQL / PostgresSQL).

Microsoft все еще предоставляла поддержку 2000 года до некоторого времени в прошлом году, поэтому только недавно у нас была более веская причина для обновления.

У небольших компаний тоже есть проблема с ресурсами - обучение, планирование, тестирование обновления требуют времени и влияют на другие операции. Если вам необходимо одновременно обновить какое-либо другое приложение, которое работает на SQL Server, это может стать очень дорогим.

Некоторое время мы заигрывали с переходом на открытый исходный код, и, хотя это было возможно, он также останавливал любое обновление.

Дэн
источник
2

Почему бы не перейти на sql server 2008, тогда вы действительно сможете снизить свои затраты благодаря сжатию данных, упрощению обслуживания и повышению производительности (отфильтрованные индексы)? Недавно мы обновили установку SQL Server 2000 и сэкономили 75% дискового пространства, а производительность резко возросла.

Другим улучшением стал параллелизм благодаря новому механизму блокировки, введенному в SQL Server 2005.

/ Хокан Винтер

Хакан Винтер
источник
2

Крупные организации рискуют и неосведомлены, что приводит к некоторым действительно глупым решениям. Когда я занимался Unix в 2003/2004 годах, мы застряли в среде Solaris 2.5.1, которая была выпущена, когда я учился в 10-м классе, потому что это «проверенная» технология и ее «слишком дорого» обновлять.

Слишком дорого, часто говорят PHB, потому что «я был слишком туп, чтобы заплатить 1000 долларов за проект стоимостью 10 миллионов долларов».

В случае программного обеспечения Microsoft для стека люди часто оказываются неблагоприятными при обновлении, потому что они не хотят иметь дело с троллем лицензирования внутри компании и приобретают OEM-лицензию у Dell / IBM / etc и не хотят иметь дело с бюрократические обручи, участвующие в модернизации.

duffbeer703
источник
2

Я не покупаю (каламбур) аргумент «предоплата», но, к сожалению, предоплата - это то, что многие PHB зацикливаются на этом, так что это действительно, чтобы оставить это.

Для меня единственной убедительной причиной будут приложения, которые его используют. Например, если вы работаете в SharePoint 2003, НЕТ СПОСОБА, когда вы собираетесь перейти на SQL 2005 или 2008, не выполняя также обновление SharePoint, что не является тривиальным вопросом.

Максимус Минимус
источник
2

В нашей организации все новые разработки должны выполняться на SQL 2005/2008, но у нас так много устаревших приложений 2000 года, что просто не стоит времени / энергии / денег на их преобразование.

В дополнение к проблемам совместимости (DTS для SSIS является для нас самой большой проблемой), мы также реализовали ряд рекомендаций / ограничений безопасности для SQL 2005, которые мы не применяли для SQL 2000. (без пользователей dbo, только разрешения для схемы, и т.д.)

BradC
источник
1

В нашей организации есть несколько причин. Некоторые из них довольно специфичны для нашего случая, а другие - более общие.

1) Несовместимость. У нас было несколько случаев, когда у программного обеспечения, написанного для SQL2005, возникали проблемы при установке на SQL2000. Последний случай, который я видел в последнее время, был вызван тем, что были явно объявлены параметры, которых не было в 2000 году, и различием в имени таблицы индекса системы. (sys.indexes против sysindexes)

2) Обучение. Наши разработчики наверняка знают 2005 год и предпочли бы разрабатывать его или уже 2008 год. Однако работа по поддержанию работоспособности ложится на НОК, а не на разработчиков. Никто в нашем NOC не проходил никакого формального обучения SQL, и различий между ними, только с точки зрения административного инструмента, достаточно, чтобы это рассмотреть.

3) Стоимость модернизации существующих продуктов. Для нас это большой. Я не говорю о стоимости лицензии от Microsoft здесь. В нашем бизнесе обновление любого из наших существующих продуктов (даже если мы не обновляли все уже имеющееся поле задним числом) потребовало бы дорогостоящего и длительного процесса повторной сертификации через несколько различных нормативных и сертификационных тестовых лабораторий. Мы строим новые продукты на SQL2005, но не модернизируем старые по этой причине.

Процесс сертификации также означает, что в результате мы получим смесь из новых сборок, где в некоторых юрисдикциях будет использоваться SQL2000, а в других - SQL2005, в зависимости от того, были ли получены одобрения или нет. По причине № 2 мы предпочитаем поддерживать нашу производственную среду как можно более последовательной.

4) Общие отличия. Это действительно расширение № 1. Есть много мелочей, которые изменились, некоторые из которых вызывают у нас головные боли. Например, SQL2005 на Server2003 будет применять политики паролей Windows для учетных записей sql. Само по себе неплохо, но из-за того, как мы взаимодействуем с базой данных, это ломает практически все наше (и многие стороннее) программное обеспечение.

Короче инерция.


источник
1

Я знаю, что есть люди, которые должны использовать .NET 1.1, потому что они должны поддерживать системы Windows 2000.

Следуя этой логике, практическая причина для запуска MSSQL 2000 заключается в том, что вы можете поддерживать системы Windows NT 4!

Хотите верьте, хотите нет, но SQL Server 2005 фактически работает на Windows Server 2000.

Ник Кавадиас
источник