I'm using iODBC on OS X 10.6.8 agains MySQL (mysql-connector-odbc-5.1.8) from a C program that I'm writing, but tracing of all ODBC library calls, which is supposed to be turned off by default, is turned on.
I have found a set of odbc.ini
and odbcinst.ini
files in /etc
and in /Library/ODBC/
, but none of them contains "Trace = yes", and adding an [ODBC]
section with "Tracing = no" to any of these files doesn't seem to do anything. I also do not have any private .odbc.ini
or .odbcinst.ini
files in the working directory nor in my home directory nor anywhere else.
The only way I can turn tracing off is to call SQLSetConnectAttr()
to set SQL_ATTR_TRACE
to SQL_OPT_TRACE_OFF
after allocating a connection handle, but at that point, the trace file, sql.log
, has already been created in the working directory.
Any help with tracking down where tracing is turned on (it's supposed to be off by default), alternatively, how to turn it off so that the log file never gets created, would be appreciated.
I'm not sure why you would be using odbc instead of the standard connector, but have you tried setting the option for the TraceFile to /dev/null in odbc.ini. This may at least remove the file if you can't get the Trace = OFF to work by itself.
[ODBC]
Trace = OFF
TraceFile = /dev/null
Don't have my Mac at the office to test this, but seems like it should work.