Вопрос

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

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

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

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

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

  • Создайте резервную копию соответствующей базы данных и выполните мастеринг на 6.5.
  • Выполнить 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.5менеджер предприятия должен записать все индексы и триггеры базы данных в sql-файл.
  • Запустите этот sql-файл для новой копии базы данных в Management Studio 2005.
  • Используйте 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 секунды, без каких-либо изменений, новых индексов или чего-либо еще.Я не ожидал такого немедленного улучшения.

Это было полезно?

Решение

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

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

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

Другие советы

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

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top