Миграция с PROGRESS на SQL Server 2008 - как? - PullRequest
2 голосов
/ 16 февраля 2011

Передо мной стоит задача, с которой я не знаю, как продолжить: перенести базу данных объемом 120 ГБ из PROGRESS в SQL Server 2008.

Я, честно говоря, никогда даже не слышал о PROGRESS и могуВ действительности их веб-сайт не имеет особого смысла ... у меня есть папка restore со 128 файлами с именем dbqsXXX, где XXX имеет значение от 1 до 128 - каждый файл имеет размер 1 ГБ.

Я не знаю PROGRESS, у меня нет ни одного сервера PROGRESS - есть ли надежда, что я смогу перенести данные из этих файлов в SQL Server ??

Также: я пытался найтиДрайверы ODBC, и я нашел один (он называется SequeLink ODBC 4.51 ), но я не могу установить его, так как он не нравится моей машине с Win7 x64 :-( И на самом сайте PROGRESS я не могу найтилюбой драйвер ODBC для скачивания - только вещи, которые будут стоить $$$$$$

Итак, какие у меня варианты ??

  • есть что-то вроде "PROGRESS Express" илиДоступна «бесплатная» или «разработчик» версия?
  • могу ли я получить доступ к этим БДфайлы в моей директории "restore" другим способом ??Похоже, они по крайней мере частично двоичные - без CSV, XML или чего-либо подобного .....
  • могу ли я найти полезный драйвер ODBC или OleDB, который будет работать на моем компьютере с Win7 x64 и позволять мне создаватьсвязанный сервер с PROGRESS db ??(прекрасно работал с MySQL некоторое время назад)
  • Могу ли я (или мой клиент) каким-то образом вывести структуру и данные из PROGRESS в другой, более доступный формат, такой как MySQL или PostgreSQL или что-то еще ??

Любые советы, советы, веб-сайт, веб-трансляции приветствуются !!

1 Ответ

5 голосов
/ 27 февраля 2011

Доступен оценочный комплект: http://communities.progress.com/pcom/docs/DOC-103695

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

Однако возможно, что база данных была защищена от такого доступа. В этом случае вам может не повезти, если вы не сможете получить учетные данные от того, кто их контролирует.

Сказав это - ваше описание имен файлов не похоже на реальную базу данных. Экстенты базы данных обычно называются как dbname.db, dbname.b1, dbname.d1, dbname.d2 и т. Д. Если база данных была сконфигурирована с использованием областей хранения, многие из экстентов будут иметь имя dbname _ ##. D #.

Ваши файлы звучат больше как "резервные экстенты". Другими словами, они являются результатом того, что кто-то сделал резервную копию и записал ее кусками по 1 ГБ. Для восстановления такой резервной копии вам понадобится текстовый файл, в котором перечислены все эти «экстенты», кроме первого. Затем вы выполните следующее:

prorest dbname экстент1 <список файлов </p>

(используйте ярлык "proenv", чтобы получить правильно сконфигурированное командное окно.)

Как только вы это сделаете, у вас будет настоящая база данных. (Если резервная копия была сделана со сжатием, восстановленная БД, вероятно, будет намного больше, чем ваши файлы.)

Prorest не имеет обратной совместимости. Так что, если резервная копия - база данных v9, оценочный комплект v10 не будет работать. Вам нужно будет найти машину с той же версией Progress, с которой была сделана резервная копия. (В папке% DLC% \ bin \ 91dbutils есть утилиты v9. Ditto v8 в 83dbutils. Теоретически вы можете использовать их для восстановления резервной копии старой версии и обновления до текущей версии. На самом деле использование этих утилит является «сложным» .)

Учитывая фактическую базу данных, вы можете запустить сервер с «proserve», подключиться к нему и повеселиться. Но сейчас неясно, есть ли смысл вдаваться в детали этого.

...