Page 1 of 2 12 LastLast
Results 1 to 15 of 18
  1. #1
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11

    Question Unanswered: Cannot figure out a very old Informix (SE?) database

    Hello!

    I've been tasked with getting rid of our old HP Unix box at work and finding a new home for the old database on it.

    The machine is a HP 9000/887 w/ a RISC processor
    It has HP UX B.10.20 running on it.

    The software that we used was called PRISM and it was a warehouse management software so the tables hold customers, products, etc.

    Now we have ZERO documentation for PRISM and I can't find zilch with Google either. I have no idea what kind of database system PRISM used but I'm pretty sure I've narrowed it down to an Informix database of some sort based on this:

    There is a directory called informix under /usr

    In the /PRISM directory there are some directories that end in .dbs and include .lok, .idx., and .dat files

    Soooo I have copied over the entire contents of the /PRISM directory using FTP to my local computer and tried using some free informix parsers to read the tables with no luck.

    I have also tried logging in as user informix but it doesn't exist. I thought it was automatically created when an informix database was installed?

    Does anybody know a way I can find out for sure what type of database this is? Or a way I can export the information from it??

    ANY help would be greatly appreciated!!
    Thanks!

  2. #2
    Join Date
    Sep 2004
    Posts
    51

    Cannot figure out a very old Informix (SE?) database

    Unfortunately you cannot copy the database files from one system to another.

    If the HP 10.20 system is still available I would log into it as the informix user.

    Find the directory where Informix software is installed. You may want to check the environment for INFORMIXDIR. If that is set in the environment then go to $INFORMIXDIR/bin. Look for a program called dbexport, hopefully it is there. Cd to /tmp, then run dbexport prism -o /tmp/prism; this will create the sql and unl files in the prism directory. You will need to tarball these files and move to the new system.

    If dbexport is not on the old system then Informix SE will need to be install on the new system. You will need to acquire the software from informix. Once that is installed then using dbaccess create the database. Each table will need to be created then the files will be replaced by the ones that were copied from the old system. I cannot garentee this will work.

    I would probably check with either Informix Support or on IIUG website for a script that will create the unload files.

    Do you know which version of SE is installed on HP-UX 10.20?

  3. #3
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11
    Thank you for the reply.

    I have no idea what version of Informix this is, but I did find a file in /usr/informix/bin/sqlexec that states

    INFORMIX-SQL Version 2.10.03F

    when ran.

    There is no user informix, nor do those directories exist. I realize this would normally mean that Informix isn't installed but I don't know what else it could be.

    The real reason I think it's an informix database is the .idx, .dat, and .lok files that I found under the /PRISM directory.

  4. #4
    Join Date
    Sep 2004
    Posts
    51

    Cannot figure out a very old Informix (SE?) database

    It appears to be a very very old version of SE. The 2.10 states the version.

    Can you look under /usr/informix/bin for the binaries installed. Dbexport did not exist with that old of a version. DBschema may exist, but I am not sure. IIUG.org does have the source for mydbexport, I am not sure if it will work with this version.

    I will look to see if I can locate a script, unfortunately bottom line is SE will need to be installed on the new machine.

  5. #5
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11
    when I do an ls on the /usr/informix it shows nothing at all.

  6. #6
    Join Date
    Sep 2004
    Posts
    51

    Cannot figure out a very old Informix (SE?) database

    Run ls -l on /usr, see if informix is a link to another directory.

    Run which dbaccess, it should list the directories where this binary is found.

    If you found sqlexec under /usr/informix/bin it does not make sense that the directory does not exist.

    I am not sure what files came with this old version.

  7. #7
    Join Date
    Apr 2011
    Posts
    6
    See if user informix has an environment variable called "INFORMIXDIR" set. That will give you the base directory containing the binaries, etc.

    You can use the dbschema binary to generate the SQL statements to create the database schema, and you can unload the data on a table by table basis using the UNLOAD statement when running dbaccess.

    I don't think 2.10 had dbexport, which would generate the schema and unload everything in one shot.

    What are you trying to do?

  8. #8
    Join Date
    Apr 2011
    Posts
    6
    OK, so I've re-read the original question a bit more carefully.

    Unless you're going to replace the HP with a binary compatible box (and good luck with that! ;o) you are going to have to unload the data as described and import it into a new instance. I don't know what you're going to do with the PRISM application, but it's easy to buy a new version of SE (probably 7.25 or 7.26) for Linux and import the data into that using dbaccess to create the schema using the output from your previous dbschema command, then using the LOAD statement to pull the data in.

    The manuals are here: IBM Informix Products

  9. #9
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11
    Quote Originally Posted by marymurny View Post
    Run ls -l on /usr, see if informix is a link to another directory.

    Run which dbaccess, it should list the directories where this binary is found.

    If you found sqlexec under /usr/informix/bin it does not make sense that the directory does not exist.

    I am not sure what files came with this old version.
    informix is not a link to another directory

    which dbaccess returns "no dbaccess in.." then lists a bunch of directories, most of them two or three times, with what seems like no pattern or reason.

    I'm sorry saying it showed nothing wasn't exactly right.

    ls /usr/informix returns
    bin lib msg

    ls /usr/informix/bin returns nothing

    ls /usr/informix/lib returns sqlexec

    ls /usr/informix/msg returns bcheck.iem (which I understand is a informix error log??)

    Quote Originally Posted by Obnoxio The Clown
    See if user informix has an environment variable called "INFORMIXDIR" set. That will give you the base directory containing the binaries, etc.

    You can use the dbschema binary to generate the SQL statements to create the database schema, and you can unload the data on a table by table basis using the UNLOAD statement when running dbaccess.

    I don't think 2.10 had dbexport, which would generate the schema and unload everything in one shot.

    What are you trying to do?
    There is no user informix... This is what has me so perplexed. Without this user, I cannot find a way to interact with the databases besides using the PRISM software, which really only allows me to search them.

    I'm sure we would buy Informix SE for Linux if we were certain that we could move the databases over but as of right now were not.


    Thanks for all the continued help guys!!! Databases and Unix are certainly not my expertise.

  10. #10
    Join Date
    Apr 2011
    Posts
    6
    Quote Originally Posted by steezburgers View Post
    informix is not a link to another directory

    which dbaccess returns "no dbaccess in.." then lists a bunch of directories, most of them two or three times, with what seems like no pattern or reason.

    I'm sorry saying it showed nothing wasn't exactly right.

    ls /usr/informix returns
    bin lib msg

    ls /usr/informix/bin returns nothing

    ls /usr/informix/lib returns sqlexec

    ls /usr/informix/msg returns bcheck.iem (which I understand is a informix error log??)



    There is no user informix... This is what has me so perplexed. Without this user, I cannot find a way to interact with the databases besides using the PRISM software, which really only allows me to search them.

    I'm sure we would buy Informix SE for Linux if we were certain that we could move the databases over but as of right now were not.


    Thanks for all the continued help guys!!! Databases and Unix are certainly not my expertise.
    Right. I'm feckin' impressed, let me start by saying that.

    OK, the trivial thing is bcheck.iem, this is not an error log, it's a file that contains error messages for display by the bcheck utility. Which is odd, because bcheck has been deleted!

    The terrifying thing here is that Prism appears to have installed SE and then removed everything that is not vital for Prism to run.

    Unless you can get a set of 2.10 SE binaries and install them in the Informix directory, I think you've got only one or two options.

    First one is that you may be able to compile the myschema utility in this bundle here: ftp://ftp.iiug.org/pub/informix/pub/utils2_ak.gz You might then also be able to compile the sqlcmd utility from here: ftp://ftp.iiug.org/pub/informix/pub/sqlcmd-87.02.tgz Between these two utilities, you should be able to extract the schema and the data, respectively.

    If that fails, the only other thing I can think of is that you might be able to get a current version of SE, install it and do the upgrade to the current release of SE, which would have utilities like dbexport and dbaccess, so that you could unload the data and port to Linux. I would suggest you contact IBM and ask for an Information Management sales person. Explain your predicament and say that you will happily buy new SE for Linux (or whatever) if they can help you with a version of SE that runs on your platform so that you can extract your data. You can forget about them having 2.10, though. And to be honest, you will be lucky if they have anything that runs on 10.20.

    I don't know what any of this is going to mean for your PRISM application though. What is that written in?

  11. #11
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11
    I'm going to try sqlcmd and myschema utilities later this afternoon.

    The lack of any informix directories/users is what made me think it might be some kind of proprietary informix database. Then again, who knows what's happened between the 10 years since we've moved on from this system and now.

    Luckily I've already been in contact with IBM about a solution, though when I last talked to them I assumed informix was still installed and they informed me to use dbexport. If the two utilities you've listed don't work I'll have to call them back.

  12. #12
    Join Date
    Apr 2011
    Posts
    6
    Let me know how you get on.

  13. #13
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11
    Ok I hate to sound like a fool but I can't get those utilities to install...

    I used FTP in binary to move them over and I used gunzip and tar to unzip/archive them but now I can't do anything with them.

  14. #14
    Join Date
    Apr 2011
    Location
    Madison, WI
    Posts
    11
    This is what I get when I do configure in the sqlcmd directory

    Quote Originally Posted by HP UX Box
    # configure
    Configuring sqlcmd version 87.02
    checking for gawk... no
    checking for mawk... no
    checking for nawk... no
    checking for awk... awk
    checking for gcc... no
    checking for cc... cc
    checking for C compiler default output file name... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    checking for suffix of executables...
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... no
    checking whether cc accepts -g... no
    checking for cc option to accept ISO C89... unsupported
    checking for cc option to accept ISO C99... unsupported
    checking for a BSD-compatible install... /usr/ud40/bin/install -c
    checking whether ln -s works... yes
    checking for ranlib... ranlib
    checking for bison... no
    checking for byacc... no
    checking for perl... no
    checking how to run the C preprocessor... cc -E
    checking for grep that handles long lines and -e... /usr/bin/grep
    checking for egrep... /usr/bin/grep -E
    checking for ANSI C header files... yes
    checking for sys/types.h... yes
    checking for sys/stat.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for memory.h... yes
    checking for strings.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... no
    checking for unistd.h... yes
    checking sys/time.h usability... yes
    checking sys/time.h presence... yes
    checking for sys/time.h... yes
    checking for unistd.h... (cached) yes
    checking search.h usability... yes
    checking search.h presence... yes
    checking for search.h... yes
    checking fcntl.h usability... yes
    checking fcntl.h presence... yes
    checking for fcntl.h... yes
    checking for an ANSI C-conforming const... no
    checking for size_t... yes
    checking for mode_t... yes
    checking for uintptr_t... yes
    checking whether time.h and sys/time.h may both be included... yes
    checking whether struct tm is in sys/time.h or time.h... time.h
    checking for strftime... yes
    checking for vprintf... yes
    checking for _doprnt... yes
    checking for fcntl... yes
    checking for isatty... yes
    checking for lfind... yes
    checking for memmove... yes
    checking for mkfifo... yes
    checking for sigaction... yes
    checking for siglongjmp... yes
    checking for sleep... yes
    checking for snprintf... no
    checking for strerror... yes
    checking for strftime... (cached) yes
    checking for strtod... yes
    checking for strtol... yes
    checking for vprintf... (cached) yes
    checking for getopt... yes
    checking for getsubopt... yes
    checking for popen... yes
    checking for vsnprintf... no
    checking for mkstemp... yes
    checking for special C compiler options needed for large files... no
    checking for _FILE_OFFSET_BITS value needed for large files... 64
    checking readline/readline.h usability... no
    checking readline/readline.h presence... no
    checking for readline/readline.h... no
    No GNU readline header - not looking for libraries
    checking for /dev/stdin, /dev/stdout, /dev/stderr... no
    checking for INFORMIXDIR... /usr/informix
    checking for ESQL/C compiler and version... configure: error: Could not find a v
    alid ESQL/C compiler

  15. #15
    Join Date
    Apr 2011
    Posts
    6
    Oh Lordy, of course, you wouldn't have ESQL/C installed.

    You should be able to download the Informix Client SDK from IBM's website.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •