Обновление SQL Server 6.5

Да, я знаю. Существование запущенной копии SQL Server 6.5 в 2008 году абсурдно.

С учетом этого, как лучше всего перейти 6.5 на 2005 ? Есть ли прямой путь? Большая часть найденной мной документации посвящена обновлению 6.5 до 7 .

Стоит ли забыть о встроенных SQL Server утилитах обновления, записать все объекты и данные в скрипт и попытаться воссоздать их с нуля?

Я собирался попробовать обновление в эти выходные, но проблемы с сервером отложили его на будущее. Так что любые идеи будут приветствоваться в течение недели.

Обновлять. Вот как я это сделал:

  • Сделайте резервную копию соответствующей базы данных и включите Мастер 6.5.
  • Execute SQL Server 2000's instcat.sqlпротив 6.5хозяина. Это позволяет SQL Server 2000поставщику OLEDB подключиться к 6.5.
  • Используйте SQL Server 2000автономную версию "Import and Export Data"для создания пакета DTS, используя OLEDBдля подключения к 6.5. Это успешно скопировало все 6.5таблицы в новую 2005базу данных (также используя OLEDB).
  • Используйте 6.5Enterprise Manager, чтобы записать все индексы и триггеры базы данных в файл .sql.
  • Выполните этот файл .sql для новой копии базы данных в Management Studio 2005 года.
  • Используйте Enterprise Manager 6.5 для написания сценариев всех хранимых процедур.
  • Выполните этот .sqlфайл для 2005базы данных. Несколько десятков звездочек были несовместимы с ними 2005. В основном non-ANSI joinsи quoted identifier issues.
  • Устранены все эти проблемы и повторно запущен .sqlфайл.
  • Восстановил 6.5логины пользователя 2005и предоставил им соответствующие разрешения.

При исправлении хранимых процедур пришлось немного промыть / повторить (их нужно было исправить сотни), но в остальном обновление прошло отлично.

Возможность использовать Management Studio вместо Query Analyzer и Enterprise Manager 6.5 - это потрясающая разница. Несколько запросов отчетов, которые занимали 20-30 секунд 6.5 database, теперь выполняются за 1-2 секунды без каких-либо изменений, новых индексов или чего-то еще. Я не ожидал такого немедленного улучшения.

Ответов (4)

Решение

Эй, я тоже застрял в этом лагере. Стороннее приложение, которое мы должны поддерживать, НАКОНЕЦ переходит на 2K5, так что мы почти вышли из строя. Но я чувствую твою боль 8 ^ D

Тем не менее, из всего, что я слышал от нашего администратора базы данных, главное - сначала преобразовать базу данных в формат 8.0, а затем перейти к 2005. Я считаю, что они использовали для этого встроенные инструменты миграции / обновления. Между 6.5 и 8.0 есть несколько больших шагов, которые здесь лучше решить, чем напрямую переходить от 6.5 к 2005.

САМАЯ БОЛЬШАЯ боль, если вы еще не знали, заключается в том, что DTS уступил место SSIS. Существует модуль типа оболочки, который будет запускать ваши существующие пакеты DTS, но вы захотите вручную воссоздать их все в SSIS. Легкость этого будет зависеть от сложности самих пакетов, но до сих пор я сделал несколько в работе, и они были довольно гладкими.

Я ни в коем случае не авторитетен, но я считаю, что единственный поддерживаемый путь - от 6.5 до 7. Конечно, это был бы наиболее разумный путь, тогда я считаю, что вы можете перейти с 7 напрямую на 2005 довольно безболезненно.

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

Если вы можете найти профессиональную или какую-либо другую версию Visual Studio 6.0 для суперпредприятия - она ​​шла с копией MSDE (в основном предшественник SQL Express). Я считаю, что MSDE 2000 по-прежнему доступен для бесплатной загрузки от Microsoft, но я не знаю, можно ли напрямую перейти с 6.5 на 2000.

Я думаю, что теоретически вы вряд ли столкнетесь с какой-либо опасностью. Однако годы практики говорят мне, что вы всегда будете пропускать какой-то объект, разрешение или другой элемент базы данных, который не проявится сразу. Если вы можете записать весь дамп, тем лучше. Поскольку у вас будет меньше шансов что-то пропустить - а если вы что-то пропустите, это можно легко добавить в скрипт и исправить. Я бы избегал каких-либо ручных действий (кроме однократного нажатия клавиши ввода), таких как чума.

Вы можете обновить 6.5 до SQL Server 2000. Возможно, вам будет легче получить SQL Server или версию MSDE 2000 года. У Microsoft есть страница о переходе с 6.5 на 2000 . Если у вас есть база данных в формате 2000, SQL Server 2005 без проблем обновит ее до формата 2005.

Если у вас нет SQL Server 2000, вы можете загрузить версию MSDE 2000 прямо из Microsoft.