Linux 및 macOS에서 데이터 액세스 추적
macOS 및 Linux의 unixODBC 드라이버 관리자는 ODBC Driver for SQL Server의 ODBC API 호출 입력 및 종료 추적을 지원합니다.
애플리케이션의 ODBC 동작을 추적하려면 odbcinst.ini
파일의 [ODBC]
섹션을 편집합니다. 추적 출력을 포함할 파일 경로에 Trace=Yes
및 TraceFile
값을 설정합니다. 예시:
[ODBC]
Trace=Yes
TraceFile=/home/myappuser/odbctrace.log
/dev/stdout
또는 다른 디바이스 이름을 사용하여 영구 파일 대신 추적 출력을 보낼 수도 있습니다. 위의 설정을 사용하면 애플리케이션이 unixODBC 드라이버 관리자를 로드할 때마다 수행된 모든 ODBC API 호출을 출력 파일에 기록합니다.
애플리케이션 추적을 마친 후 추적의 성능 저하를 방지하기 위해 odbcinst.ini
파일에서 Trace=Yes
를 제거하고 불필요한 추적 파일이 제거되었는지 확인합니다.
추적은 odbcinst.ini
에서 드라이버를 사용하는 모든 애플리케이션에 적용됩니다. 모든 애플리케이션을 추적하지 않으려면(예: 중요한 사용자별 정보 공개를 방지하기 위해) 개별 애플리케이션 인스턴스를 추적할 수 있습니다. odbcinst.ini
환경 변수를 사용하여 인스턴스에 비공개 ODBCSYSINI
의 위치를 제공합니다. 예시:
$ ODBCSYSINI=/home/myappuser myapp
이 경우 Trace=Yes
의 [ODBC Driver 17 for SQL Server]
섹션에 /home/myappuser/odbcinst.ini
를 추가할 수 있습니다.
드라이버가 사용 중인 파일 확인
Linux 및 macOS ODBC 드라이버는 사용 중인 odbc.ini
파일 또는 odbc.ini
파일의 경로를 알지 못합니다. 사용 중인 odbc.ini
파일에 대한 정보는 unixODBC 도구 odbc_config
및 odbcinst
에서 확인할 수 있습니다. 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이 있는 경우 해당 사용자가 연결할 때 사용자 DSN이 사용됩니다. 자세한 내용은 unixODBC 설명서를 참조하세요.