Форум: "Базы";
Текущий архив: 2002.12.09;
Скачать: [xml.tar.bz2];
ВнизКак скопировать данные с одного сервера БД на другой ? Найти похожие ветки
← →
Andrew2 (2002-11-21 05:31) [0]Доброго времени суток!
Подскажите, пожалуйста, как выбрав информацию с одного сервера БД (AS400), сохранить ее на другом сервере БД (MSSQL). Пробовал
через TQuery.ExecSQL. SQL запрос выполняется в пределах одного
сервера. Как указать, что информация должна браться с другого сервера ? При этом нежелательно возвращать набор данных инициирующему запрос приложению (очень большое количество записей порядка 17 миллионов). Может лучше использовать компоненты ADO ? Но как с ними работать ? Как подключиться с их помощью к серверу БД ?
← →
wicked (2002-11-21 09:28) [1]а если через DTS попробовать?... имеет ли as400 драйвера odbc или ole db провайдера?...
← →
Andrew2 (2002-11-21 09:40) [2]Пробовали через DTS. Но во-первых, с AS400 доступны для перекачки только физические таблицы, представления не удается выкачать, при попытки в DTS выбрать представление, появляется сообщение о "неожиданной" ошибке. А если выкачивать те таблицы, из которых строится нужное представление и строить представление уже на MS SQL-е, то transaction-log файл разрастается до неимоверных размеров. Короче места не хватает на жестких дисках (очень большие базы данных)и DTS-пакет завершается с ошибкой. Вот поэтому и решил на Delphi сваять прогу для перекачки данных.
Как лучше это сделать?
← →
Alexander_K (2002-11-21 10:00) [3]А четез DATAPUMP не пробовал?
← →
AlexSV (2002-11-21 10:36) [4]В свое время решал такую проблему (только с MS SQL в DB2 AS400).
Использовалась следующая схема:
1. На приемнике создавалась копия структуры источника (только таблицы).
2. В программе создавались две базы (источник, приемник).
3. С источника получали список таблиц.
4. Потаблично перекачивались данные на приемник (объемы конечно поменьше).
Но есть нюансы с согласованием типов данных.
5. На приемнике создавались индексы и связи.
Для того, чтобы лог на MS SQL не забивался, на время перекачки
на базе установи очищение лога после каждой транзакции.
Если нужно подробнее, то пиши на мыло, помогу чем смогу.
← →
Andrew2 (2002-11-22 12:28) [5]Alexander_K, через DATAPUMP - это как ?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.12.09;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c