我在OS X 10.6.8上再次使用iODBC来自我正在编写的C程序中的MySQL(mysql-connector-odbc-5.1.8),但跟踪所有ODBC库调用,这应该是默认情况下处于关闭状态。
我在odbc.ini
和odbcinst.ini
中找到了一组/etc
和/Library/ODBC/
个文件,但其中没有一个包含“Trace = yes”,并添加了{对任何这些文件中的“跟踪=否”的{1}}部分似乎没有做任何事情。我在工作目录或家庭目录中也没有任何私人[ODBC]
或.odbc.ini
文件。
我可以关闭跟踪的唯一方法是在分配连接句柄后调用.odbcinst.ini
将SQLSetConnectAttr()
设置为SQL_ATTR_TRACE
,但此时,跟踪文件{{1已经在工作目录中创建了。
任何帮助跟踪打开跟踪的位置(默认情况下它应该是关闭的),或者,如何关闭它以便永远不会创建日志文件,将不胜感激。
答案 0 :(得分:0)
我不确定为什么要使用odbc而不是标准连接器,但是你是否尝试过将traceFile的选项设置为odbc.ini中的/ dev / null。如果你无法单独使用Trace = OFF,这至少可以删除文件。
[ODBC]
Trace = OFF
TraceFile = /dev/null
请不要让我的Mac在办公室进行测试,但看起来它应该可以正常工作。
答案 1 :(得分:0)
Mac OS X上ODBC的默认设置文件位于 -
/Library/ODBC/odbc.ini
/Library/ODBC/odbcinst.ini
/Users/*/Library/ODBC/odbc.ini
/Users/*/Library/ODBC/odbcinst.ini
前两个用于系统级设置和DSN;后者适用于用户级别。
一些错误的安装程序和库在 -
创建文件/Users/*/.odbc.ini
/Users/*/.odbcinst.ini
/etc[/*]/.odbc.ini
/etc[/*]/.odbcinst.ini
/etc[/*]/odbc.ini
/etc[/*]/odbcinst.ini
这些可能会导致麻烦。此命令将显示所有可能存在问题的文件 -
sudo find / \( -name '.odbc*.ini' -or -name 'odbc*.ini' \) -ls
最好的是 -
(ObDisclaimer:我是OpenLink Software的员工,负责维护和支持iODBC project,这是Apple for Mac OS X选择的ODBC驱动程序管理器,自Jaguar(10.2.x)捆绑以来。)