Art's Utilities Download Page
Latest Gamma Level Releases
Utils2_ak is my primary package of utilities. This is the March 29, 2023 release.
Included:
dbping.ec - Tests connections and reports connection time as well as the actual host and servername connected as well as which alias was used for
the connection. These reports are important for testing DBPATH, connection groups, and Connection Manager behavior as well as verifying
server failover.
dbcopy.ec - Copy data from table to table directly across databases, servers, instances, versions, even between databases at different logging levels
without worrying about long transaction rollbacks.
dbdelete.ec - Delete large amounts of data from a table FAST without risking long transaction rollbacks.
dbmove.ec - Another data copy utility using the methods the dbdelete uses. Can copy some data that dbcopy cannot.
dbsavail.ec - Summary dbspace report. Reports used and free space in pages, KB, and percent. Optional chunk detail.
dbscript.ec - Generate SQL, scripts, or OS commands to run against all or some of the tables in your database.
dbstruct.ec - Generate data structures from your database for C, C++, ESQL/C, Structured FORTRAN, or x4GL.
dostats_ng.ec - The original and still the best way to automate your update statistics runs. The original dostats.ec source is included for servers older than
10.00.
drive_dostats - Divide and conquer. Runs multiple copies of dostats updating a subset list of your tables. If you have the cores to spare, get the job done
faster.
listdb7.ec - Displays details about your databases and tables and indexes.
mydbdiff - Script to compare two schema files or a schema file to a live schema.
myschema - My dbschema replacement utility. Does everything that dbschema does except display data distributions (dbschema -hd) and much more.
Many many options to tune its behavior
printfreeB.ec - Print out a table detail report similar to oncheck -pT
sqlstruct.ec - Generate data structures from SQL statements including input and output structures for SELECT, INSERT, DELETE, and UPDATE statements.
Options to generate C, C++, ESQL/C, 4GL, or SQL DDL (for SELECT).
ul.ec - A binary file unload/load utility. File format is compatible with external table "INFORMIX" format and portable between processor
architectures.
README.1st - Reports what features and fixes are included in each utility.
BUILDING - Describes how to build utils2_ak on each platform and compiler environment. Tells what changes need to be made to the makefiles for
each.
Myexport is my replacement for dbexport and dbimport. These scripts optionally use external tables or the Informix High Performance Loader to unload and load data much faster than dbexport/dbimport without locking the database. Options include parallel export and import, NOVALIDATE data loading, constraint filtering, user selected isolation level, running dostats after the load, compressed unload files, dbexport & dbimport compatibility, dbspace mapping binary export and import (not compatible with dbimport).
The package includes:
myexport - Drop in replacement for dbexport
myimport - Drop in replacement for dbimport
ak_launcher.c - Used by myimport
from_external.awk - Used by myimport to pre-process a dbexport data set for loading via external tables.
Sample dbspace mapping files.
ratios.shr_ak is a package of metric calculations that I use to quickly evaluate the health of a running Informix system. It includes a stored procedure, ratios(), that is installed in sysmaster and a script, newratios.ksh, that retrieves the data calculated by the ratios proc and formats a report.
Scripts_ak: This package contains 17 scripts that I have found to be particularly useful. The package includes a file, scripts_doc.txt, describing each script.
This is a tar file.
ar2: This is a portable archiver that writes and reads multiple formats of ar archives. It can read and write Posix/Linux/System V format, AIX extended format, and BSD format archives. If you are using AIX or some older HP/UX systems you will need ar2 in order to extract the source for myschema from its Posix format ar archive.
Included:
dbping.ec - Tests connections and reports connection time as well as the actual host and servername connected as well as which alias was used for
the connection. These reports are important for testing DBPATH, connection groups, and Connection Manager behavior as well as verifying
server failover.
dbcopy.ec - Copy data from table to table directly across databases, servers, instances, versions, even between databases at different logging levels
without worrying about long transaction rollbacks.
dbdelete.ec - Delete large amounts of data from a table FAST without risking long transaction rollbacks.
dbmove.ec - Another data copy utility using the methods the dbdelete uses. Can copy some data that dbcopy cannot.
dbsavail.ec - Summary dbspace report. Reports used and free space in pages, KB, and percent. Optional chunk detail.
dbscript.ec - Generate SQL, scripts, or OS commands to run against all or some of the tables in your database.
dbstruct.ec - Generate data structures from your database for C, C++, ESQL/C, Structured FORTRAN, or x4GL.
dostats_ng.ec - The original and still the best way to automate your update statistics runs. The original dostats.ec source is included for servers older than
10.00.
drive_dostats - Divide and conquer. Runs multiple copies of dostats updating a subset list of your tables. If you have the cores to spare, get the job done
faster.
listdb7.ec - Displays details about your databases and tables and indexes.
mydbdiff - Script to compare two schema files or a schema file to a live schema.
myschema - My dbschema replacement utility. Does everything that dbschema does except display data distributions (dbschema -hd) and much more.
Many many options to tune its behavior
printfreeB.ec - Print out a table detail report similar to oncheck -pT
sqlstruct.ec - Generate data structures from SQL statements including input and output structures for SELECT, INSERT, DELETE, and UPDATE statements.
Options to generate C, C++, ESQL/C, 4GL, or SQL DDL (for SELECT).
ul.ec - A binary file unload/load utility. File format is compatible with external table "INFORMIX" format and portable between processor
architectures.
README.1st - Reports what features and fixes are included in each utility.
BUILDING - Describes how to build utils2_ak on each platform and compiler environment. Tells what changes need to be made to the makefiles for
each.
Myexport is my replacement for dbexport and dbimport. These scripts optionally use external tables or the Informix High Performance Loader to unload and load data much faster than dbexport/dbimport without locking the database. Options include parallel export and import, NOVALIDATE data loading, constraint filtering, user selected isolation level, running dostats after the load, compressed unload files, dbexport & dbimport compatibility, dbspace mapping binary export and import (not compatible with dbimport).
The package includes:
myexport - Drop in replacement for dbexport
myimport - Drop in replacement for dbimport
ak_launcher.c - Used by myimport
from_external.awk - Used by myimport to pre-process a dbexport data set for loading via external tables.
Sample dbspace mapping files.
ratios.shr_ak is a package of metric calculations that I use to quickly evaluate the health of a running Informix system. It includes a stored procedure, ratios(), that is installed in sysmaster and a script, newratios.ksh, that retrieves the data calculated by the ratios proc and formats a report.
Scripts_ak: This package contains 17 scripts that I have found to be particularly useful. The package includes a file, scripts_doc.txt, describing each script.
This is a tar file.
ar2: This is a portable archiver that writes and reads multiple formats of ar archives. It can read and write Posix/Linux/System V format, AIX extended format, and BSD format archives. If you are using AIX or some older HP/UX systems you will need ar2 in order to extract the source for myschema from its Posix format ar archive.
News:
March 29, 2023
Updated getopt.c and dbdelete.ec to better support compiling on Windows. Also, repackaged utils2_ak in a
.zip file instead of an ar archive.
February 22, 2023
Fixed an issue in myschema causing incorrect PUT clauses for tables with BLOB and CLOB type columns that
have CRCOLS defined on them. Fixed a bug in the myschema makefiles. Also I have added the source package
for my portable ar utility, ar2, here for download. You will need it to extract the myschema source on AIX.
January 18, 2023
Updated the Usage description of --include-owner option to document that this option affects
both tables and procedures/functions.
January 10, 2023
Fixed a issue with VIEWs under user name filtering options (-O, --set-owner,--use-table-owner,
& --use-database-owner) stripping commas from the SELECT statement that follow closing
quotes. Thanks to Øyvind Gjerstad for reporting the issue.
!! Older change news deleted !!