On 26/06/2013 18:42, Dan Bent wrote:
I agree, and I've been trying to identify what changed yesterday morning.
The database, Perl,and the program all reside on the same machine, so I
think we can rule out network issues.
As far as I know, the DBMS, Perl and ODBC infrastructure have been
stable for quite a while, and I haven't tinkered with any of that in
recent memory. However, there is another administrator who might have
unknowingly deleted files, and there are many users with access to this
host (though most can only run one application, and shouldn't be able to
get to the ODBC config stuff). I am really the only user who uses Perl
and ODBC in the Unix environment.
I suppose I could compare the backup tape with what is currently on the
system to see if there are files obviously missing, but I'm not exactly
sure what I would be looking for, and there could be thousands of files
to compare.
Am I thinking clearly on this?
The files you want to look for are:
odbc.ini
odbcinst.ini
any shared object referenced in any odbcinst.ini file
any file DBD::ODBC's ODBC.sl depends on (e.g., libodbc.sl or the driver
shared object)
If you are not using unixODBC driver manager and you are using iODBC
driver manager it is libiodbc.sl.
Then you might have had something in your environment e.g., most ODBC
driver managers will follow ODBCINI env var or ODBCINSTINI etc. Some
ODBC drivers need env vars setting in the environment e.g., DB2 often
needs DB2INSTANCE. SO also check any profile files for the user doing ODBC.
But if you answer the other questions in my other reply I might be able
to help more.
Martin
On Wed, Jun 26, 2013 at 11:46 AM, Jonathan Leffler
<jonathan.leff...@gmail.com <mailto:jonathan.leff...@gmail.com>> wrote:
On Wed, Jun 26, 2013 at 9:28 AM, Dan Bent <db...@comcast.net
<mailto:db...@comcast.net>> wrote:
I suddenly lost the ability to connect to my ODBC database
yesterday, after years of using the same function to establish a
connection:
So, the question you must ask yourself is:
What changed yesterday? Or, if not yesterday, since the previous
time when you successfully used the code.
Something crucial changed. If it wasn't the Perl plus ODBC
infrastructure, then what changed outside that? The DBMS? The
networking?
Change analysis is likely to get you to the answer quicker than
anything else.
--
Jonathan Leffler <jonathan.leff...@gmail.com
<mailto:jonathan.leff...@gmail.com>> #include <disclaimer.h>
Guardian of DBD::Informix - v2013.0521 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never cease
to be amused."