У меня есть файл .savf, который кто-то создал на сервере IBM DB2 S400 для передачи мне базы данных.
Я установил версию сообщества сервера db2 на Ubuntu. Моя установка работает, так как я смог создать тестовую базу данных, загрузить в нее некоторые данные и сделать несколько запросов.
Теперь я хотел бы использовать файл savf для воссоздания базы данных, из которой он был создан.
Я тону в страницах документации IBM, таких как https://www.ibm.com/docs/en/i/7.1?topic=ssw_ibm_i_71/cl/crtsavf.html
Я думал, что что-то вроде rstobj to mydatabase from data.savf, например, с файлами дампа sql, будет работать, но я не могу обойти это.
Пробовал некоторые команды с rstobj, но я действительно не понимаю логику SAVLIB и остальной документации. Ресурсы документации по db2 в сети кажутся ограниченными. https://www.db2tutorial.com ничего не сказано о файле savf.
Кто-нибудь может мне помочь?





Файл сохранения — это формат архивного файла, свойственный IBM i (AS/400), аналогичный tar, zip и т. д. Мне неизвестны какие-либо утилиты, которые могли бы восстановить его в любой другой операционной системе.
Не совсем так: anerty.net/software/file/jSAVF — более интересный вопрос: можно ли использовать двоичный объект, полученный из файла сохранения, в обычной системе?
Вы не можете восстановить образ базы данных из AS400 (i-серии) в базу данных Db2-LUW (т. е. Db2-community-edition в Ubuntu).
Восстановить файл savf можно только в другой среде AS400/i-series.
Если вы хотите переместить содержимое и DDL из i-series в Db2-LUW, это возможно другими способами, но не через файл savf.
Например, вы можете экспортировать данные (и таблицы + индексы DDL) из i-серии в файлы формата IXF (специфичный для IBM формат обмена), и этот формат IXF можно напрямую импортировать/загружать в Db2-LUW и любой EBCDIC в ASCII. переводы выполняются (и таблицы могут быть созданы с помощью инструмента Db2-LUW ...import from ....IXF create into ..... Преимущество IXF заключается в том, что он воссоздает таблицу и индекс вместе со всеми данными. Вы также можете преобразовать их в формат с разделителями (csv). , но в этом случае вам придется вручную воссоздать таблицу и все ее зависимые элементы, такие как индексы и т. д.
Доступны и другие механизмы экспорта данных, включая загрузку с удаленного курсора.
Но любые подпрограммы серии i, не написанные на SQL PL, необходимо будет перенести вручную, а некоторые собственные подпрограммы SQL PL потребуют корректировки с учетом синтаксиса другой платформы.
Подробная документация по Db2 доступна в соответствующих центрах знаний IBM для каждой платформы Db2, поэтому ищите ее только на веб-сайтах IBM.
Если это одноразовый шаг, найдите мой адрес электронной почты в моем профиле stackoverflow, свяжитесь со мной за пределами сайта, и я, возможно, смогу импортировать ваш файл сохранения и сохранить содержимое базы данных как что-то, что вы можете импортировать в другом месте: CSV, текст вкладки. , и т. д.
В дополнение к другим комментариям: Многолетний опыт показывает мне, что DB2 — это всего лишь маркетинговый термин IBM, означающий целостный подход к работе с базами данных. Существует как минимум три слабо связанных ядра баз данных от IBM, все они называются DB2: мейнфрейм (z/OS), IBM i (DB2/UDB) и другие (DB2/LUW = Linux, Unix, Windows). Каждый из них существенно отличается на низком уровне при выполнении работы сисадмина. В основном это связано с совершенно разной основой операционной системы.