Thanks Art.
Now
myimport runs without any visible errors.
I ran without the "-E" option, because I got "
802: Cannot open file for run." errors (although, the external table files do seem to have been created), it looks like dbaccess (or more precisely Linux) doesn't like the filenames? (many filenames include the database name in double quotes)
So, running without "-E", unfortunately, it appears
sqlreload didn't correctly populate tables with BLOB or CLOB columns (one table was successful, but, I think that was possibly the first BLOB/CLOB columned table).
I wondered if the order-of-magnitude import time improvement was a bit too good to be true.
Looks like the more fruitful path is to persist with using external tables.
Short of possibly fiddling with the code in
myimport (or
from_external.awk), is there something else I can do that can address the double quoted database name in the external table files? (assuming this is the cause of 802 errors)
Kind regards,
Daniil
------------------------------
Daniil T
------------------------------
Original Message:
Sent: Tue May 26, 2020 11:01 AM
From: Art Kagel
Subject: myimport error - "sqlreload: not found"
Danil:
As I posted earlier:
- sqlreload is part of Jonathan Leffler's sqlcmd package which you CAN get from the IIUG Repository (www.iiug.org/software).
- You can use the -E option to have myimport use external tables which does not require sqlreload and which is the fastest way to import anyway. Here's the suggested command line:
myimport simpledb -p -i /home/informix/dbexport/simpledb -q -E
Art
Art S. Kagel, President and Principal Consultant
ASK Database Management
Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves.
Original Message:
Sent: 5/26/2020 1:20:00 AM
From: Daniil T
Subject: myimport error - "sqlreload: not found"
Greetings,
I'm currently evaluating Art Kagel's myimport tool, mainly for performance reasons.
I'm using an export generated via dbexport.
AFAICT, I can run myimport against the export.
However, when I run myimport, it fails when attempting to run the sqlreload script/utility, because, it cannot be found.
It appears sqlreload is responsible for populating the created tables.
The command line I use is:
$ myimport simpledb -p -i /home/informix/dbexport/simpledb -q
I couldn't see sqlreload on the IIUG repo:
* https://www.iiug.org/en/iiug-software-repository/
Can anyone direct me to where I can download it from please?
TIA.
#Informix