Linux 和 macOS 上的資料存取追蹤

下載 ODBC 驅動程式

macOS 和 Linux 上的 unixODBC 驅動程式管理員支援針對 ODBC Driver for SQL Server 追蹤 ODBC API 呼叫的進入與結束。

若要追蹤應用程式的 ODBC 行為,請編輯 odbcinst.ini 檔案的 [ODBC] 區段。 將 Trace=YesTraceFile 值設定為將包含追蹤輸出的檔案路徑。 例如:

[ODBC]
Trace=Yes
TraceFile=/home/myappuser/odbctrace.log

您也可以使用 /dev/stdout 或任何其他裝置名稱,將追蹤輸出傳送至該處,而不是傳送至持續性檔案。 使用上述設定,每次應用程式載入 unixODBC 驅動程式管理員時,即會將所有進行的 ODBC API 呼叫記錄到輸出檔案中。

完成應用程式的追蹤之後,請從 odbcinst.ini 檔案中移除 Trace=Yes,以避免追蹤效能受到影響,並確認已移除所有不必要的追蹤檔案。

追蹤適用於所有在 odbcinst.ini 中使用驅動程式的應用程式。 若不要追蹤所有的應用程式 (例如若要避免洩漏個別使用者的敏感性資訊),您可以追蹤個別的應用程式執行個體。 使用 ODBCSYSINI 環境變數,為執行個體提供私人 odbcinst.ini 的位置。 例如:

$ ODBCSYSINI=/home/myappuser myapp

在此案例中,您可以將 Trace=Yes 新增至 /home/myappuser/odbcinst.ini[ODBC Driver 17 for SQL Server] 區段。

判斷驅動程式正在使用的檔案

Linux 和 macOS ODBC 驅動程式不知道正在使用哪一個 odbc.ini 檔案,或 odbc.ini 檔案的路徑。 您可以從 unixODBC 工具 odbc_configodbcinst 取得有關正在使用哪一個 odbc.ini 檔案的資訊。 您也可以從 unixODBC 驅動程式管理員文件取得這項資訊。

例如,下列命令會列印分別包含系統和使用者資料來源名稱 (DSN) 之系統和使用者 odbc.ini 檔案的位置:

$ odbcinst -j
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/odbcuser/.odbc.ini`
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

「使用者 DSN」僅供特定使用者使用。 使用者 DSN 會儲存於使用者主目錄或子目錄中的檔案。 「系統 DSN」可供系統上的所有使用者使用,但只能由系統管理員新增、修改及移除。 如果使用者具備的使用者 DSN 與系統 DSN 具有相同名稱,則會在該使用者連線時使用使用者 DSN。 如需詳細資訊,請參閱 unixODBC 文件

另請參閱