powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Всё-таки: как решить такую проблему миграции с MSSQL на DB2
12 сообщений из 12, страница 1 из 1
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34153851
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На MS SQL есть неумело сделанная база, которая хорошо ли, плохо ли, но прослужила некоторое время.
Сейчас осуществляется переход на DB2 и стоит задача перенести данные из старой базы.
Структура таблиц уже создана в DB2 вручную - поскольку многое изменялось по сравнению с существующей структурой - тип полей, какие-то убрались, какие-то добавились.

Просто нужно те поля, что есть, перенести AS IS. А те, где изменен тип (к примеру, в MS SQL yes/no varchar(3) заменен на 1/0 smallint и т.п.), перенести каким-то другим способом...

Неужели это возможно только в мечтах? :(

Хотелось бы вручную "отображать" поле X исходной базы на поле Y целевой базы, с возможностью указывать формулы преобразования... А MTK пытается создать новую таблицу, где все типы полей указаны в соответствии с mapping...
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34156086
Usual Suspect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NafigatorХотелось бы вручную "отображать" поле X исходной базы на поле Y целевой базы, с возможностью указывать формулы преобразования... А MTK пытается создать новую таблицу, где все типы полей указаны в соответствии с mapping...
А чем MSSQL не устраивает? Советую придерживаться MS SQL. Ибо http://www.google.ru/search?q=%D0%BF%D1%80%D0%B5%D0%B8%D0%BC%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%B0+mssql

http://www.redbooks.ibm.com/abstracts/SG246672.html?Open
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34156367
gals
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IBM MTK - Migration Tools Kit. Бесплатная программа для перекачки структуры и данных. Частично умеет распознавать триггеры.
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34156897
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Usual Suspect
А чем MSSQL не устраивает? Советую придерживаться MS SQL.

Я бы лично рад остаться на MS SQL - там меня всё устраивает :) Но клиент не хочет продолжать платить за лицензию MS SQL большие деньги, а с IBM у них партнерские отношения и соответственно DB2 - почти бесплатна...
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34156908
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
galsIBM MTK - Migration Tools Kit. Бесплатная программа для перекачки структуры и данных. Частично умеет распознавать триггеры.

Этим тулом и пользуюсь, но там задается жесткое соответствие типов, в соответствии с этим mapping оно всю структуру и преобразовывает :( Недостаточно гибко.
Т.е. если varchar <-> varchar, то и преобразует так и никак иначе.

Я вижу лишь один выход. Сделать 2 базы на db2: одна - результат преобразования, а вторая - пустая, с "правильными" типами. И уже потом вторую базу заполнить из первой в соответствии со своими пожеланиями преобразования типов.
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34158586
gals
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В MTK не обязательно создавать базу данных на DB2.
Вы можете запустить операцию экспорта данных из MS SQL.
После этого, с помощью bat-файлов залить данные в вашу БД.

Если честно, я тоже столкнулся с проблемой переконвертации данных.
Первое решение было:
1) таблицы без сложной конвертации данных перенести с помощью MTK;
2) написать программу переливания данных между оставшимися таблицами.

Второе решение:
После появления пункта 2 предыдущего решения был написан свой набор конверторов.
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34160355
Roman Pankov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SQLWays

Я когда-то им удачно воспользовался, тоже переносил из MSSQL в DB2. SQLWays тогда был триальный, на две, что ли, недели, хватило пары часов разобраться-поэксперементировать и на ночь оставить перенос... :) Сейчас не знаю, наверное, до сих пор триал на некоторое время, чего им менять-то...
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34161508
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gals,

а как у вас обстояли дела с преобразованием uniqueidentifier-полей?
Осуществляет ли MTK однозначное преобразование "широких" ключей MS SQL в "узкий" родной формат DB2?
У нас во всех таблицах используются uniqueidentifier-ключи и, конечно, хотелось бы аккуратно преобразовать их в db2-шный урезанный формат однозначно, юзая затем для вставки новых записей стандартный generate_unique() или же вставить все ключи как char(36), а затем вместо generate_unique использовать какой-то UDF-ный заменитель MS SQL-ного newid() (кстати, неплохо бы найти алгоритм, по которому работает newid, чтобы скопировать его)

Roman Pankov,

спасибо - гляну, что за "зверь"... :)
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34161530
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Упс, редактирование недоступно - написал бред: широкий, узкий... И там, и сям - 16 байт. Просто интересно, как преобразовывает ключи MTK - просто убирает '-' - разделители между цифрами?
И сходны ли generate_unique и newid в таком случае?

Кстати, у меня не получается проверить вставку данных из MS SQL: как я уже написал в другой теме , у меня .out-файлы с данными почему-то пустые!
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34161727
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Общались с IBM: говорят, что uniqueidentifier переносят в поля char(32). Вот.

Черт, почему же не создаются out-файлы! bat-файлы заполнения базы ссылаются на out-файлы, а их нету!
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34164509
gals
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В своей базе данных, мы не использовали поля uniqueidentifier от MS SQL.
У меня немного специфическая задача. Имеется распределенная система. Обмен документами не должен зависеть от конкретной реализации СУБД. Поэтому жестких привязок на специфические типы данных СУБД нет.

Теперь о переносе данных.
При переносе с одной СУБД на другую, вы сохраняете названия таблиц и полей. В Java JDBC есть задокументированная библиотека работы с метаданными любой СУБД.
Вы подключаетесь к обоим БД. Читаете список таблиц в обоих базах. Находите совпадающие названия. Для каждой совпадающей таблицы читаете список полей. Так же строите соответстви в названиях. Что у нас остается? Остается сделать приведение типов данных от MS SQL в DB2.
Зная названия таблицы и названия полей, в программе можно сгенерировать два запроса - один SELECT, для MS SQL, другой INSERT для DB2.
Последовательно читаем содержимое таблицы из MS SQL, прогоняем его через трансформер данных и вставляем в DB2.
Поверьте, за столько дей, сколько Вы обсуждаете эту проблему, можно было уже написать такой конвертер и прогнать через него не одну базу данных.

При учете того, что в DB2 мы предусмотрительно не внесли описание FOREIGN KEY и индексов, скорость переливания данных будет приемлемой.
После процедуры переливания данных создаем необходимые FOREIGN KEY и индексы.
...
Рейтинг: 0 / 0
Всё-таки: как решить такую проблему миграции с MSSQL на DB2
    #34167232
Nafigator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gals:

пока я тут вопрос обсуждал - я уже вручную всё сделал :)
А переносить данные не понадобилось - тут вообще на словах трудно объяснить, но клиент не сформулировал задачу чётко.

А конвертер... на чем сам конвертер-то написан? java? Я не программирую на java...
И с jdbc не работал... Так что Ваша информация была для меня совершенно новой. Но всё равно спасибо, может пригодится.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Всё-таки: как решить такую проблему миграции с MSSQL на DB2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]