2008-08-01 5 views
29

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

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

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

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

Обновление. Это, как я в конечном итоге делает это:

  • резервную копию базы данных в вопросе и магистра по 6.5.
  • Выполнение SQL Server 2000instcat.sql против 6.5 Мастер. Это позволяет поставщику OLEDB SQL Server 2000 подключиться к 6.5.
  • Использовать автономный SQL Server 2000"Import and Export Data" для создания пакета DTS с использованием OLEDB для подключения к 6.5. Он успешно скопировал все таблицы 6.5 в новую базу данных 2005 (также используя OLEDB).
  • Используйте администратор предприятия 6.5, чтобы выписать все индексы и триггеры базы данных в файл .sql.
  • Выполнение этого файла .sql в отношении новой копии базы данных в 2005 году в Studio Management Studio.
  • Используйте Enterprise Manager 6.5 для написания всех хранимых процедур.
  • Выполнение этого .sql файла против базы данных 2005. Несколько дюжин sprocs имели проблемы, делающие их несовместимыми с 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 секунды без каких-либо изменений, новых индексов или чего-то еще. Я не ожидал такого немедленного улучшения.

ответ

8

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

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

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

2

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

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

2

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

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

3

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

Если у вас нет SQL Server 2000, вы можете download the MSDE 2000 версии непосредственно от Microsoft.