Re: How to access idx+dat informix files



On Aug 23, 4:23 pm, vn <valerio.n...@xxxxxxxxx> wrote:
On 23 Ago, 19:14, scottishpoet <drybur...@xxxxxxxxx> wrote:

Is this an Informix SE database or just a collaction of .data and .idx
files?

it's an Informix 7.2 database. To be correct I got a complete backup
of a unix server with
inside an Informix 7.2 db.

....

if it is an SE database you'll need an unload of those files and the
database schema and your own copy of Informix SE to load recreate the
database.

It's not possible to unload those files from the original server
because it doesn't exist anymore.
I could install a more recent (or also 7.2) Informix version in a
Windows or Linux machine and then import
the old database. This is what I'do with other dbms (mysql,
postgres, ..).
Is it possible to do that (importing without first unloading) with
Informix,
or simply have I to recreate the directory structure in another
machine?
Sorry but I never used Informix and I don't know how it works.

It would be a horrid job, if not impossible, to hand crank the schema
details into the SE system tables manually.

is this the previous case (importing without first unloading)? I hope
these is a more simple way....

Thank you very much

M

You very much don't know how Informix works.

There are several classes of Informix database products (CISAM; SE;
Online; IDS versions 7, 9, 10, & 11; and XPS not to ignore RedBrick
and Cloudscape or the Pick derivatives) , however, two ONLY of these
use the .idx and .dat files to store data. There is the CISAM indexed
flat file database library which stores it's data and indexes in these
files, and the original Informix relational database, known now as
Standard Engine or SE, which uses CISAM under the hood for storage but
adds RDBMS structure to those simple files by including a set of
system catalog tables and standardizing index key formats. If you do
not have any files whose names begin with 'sys' then these are either
CISAM files or your source didn't give you the catalog. Either way
you'll have to write "C" code using the IBM CISAM library product to
access them (and without knowing the record structure or key
definitions that will not be trivial).

If you do have the system catalog tables, and the machine you are
loading the files onto is binary compatible with the source machine
(ie same endianness and binary data formats for integers and floating
point data) then you should be able to purchase and install the IBM
Informix SE database server software on the machine, place the files
in a directory named <databasename>.dbs, set the environment variable
DBPATH to the path of the .dbs directory and you'll have access to the
database through the dbaccess native Informix query tool.

Getting ODBC access to an SE database server is not simple enough to
explain here (you'll need another product or two in addition to doing
some configuration), but doable, or you could just extract the data
using the query tool and process the flat files or load them into
another database server. I'd contact IBM or a competent Informix
consultancy thats familiar with SE and CISAM if I were you.

Art S. Kagel

.



Relevant Pages