Sql-Server

ODBC 驅動程序跟踪未擷取任何日誌解析器事件

  • April 6, 2016

我已經使用這些方向啟用了驅動程序跟踪。我正在執行 SQL Server 2014,它使用 2012 本機驅動程序

我執行啟動批處理文件,然後執行以下 LogParser 命令:

“c:\Program Files (x86)\Log Parser 2.2\LogParser.exe” “SELECT SUBSTR(Field1, 0, 2) AS CountryCode, SUBSTR(TO_STRING(Field2), 0, 5) AS Zip INTO ZipCodes FROM ‘c: \Users\jdearing\Downloads\us.txt’” -i:TSV -headerrow:OFF -o:SQL -server 。-database LogParserTest -cleartable -transactionRowCount:0 -ignoreMinWarns:OFF

這將插入零行。而是為每一行產生此錯誤:

An error occurred while uploading data to SQL table
 SQL State:     22001
 Native Error:  0
 Error Message: [Microsoft][ODBC SQL Server Driver]String data, right
 truncation

停止跟踪後,etl 為 1024k,但根據此 logparser 查詢沒有行:

“c:\Program Files (x86)\Log Parser 2.2\LogParser.exe” “SELECT * FROM ‘SnacTrace_000001.etl’” -i:ETW

我注意到 providers.txt 批處理文件中的 GUIDS 和logman query providers | findstr SQL

echo {BA798F36-2325-EC5B-ECF8-76958A2AF9B5} 0xFFFFFFFF 128 SQLNCLI > providers.txt 
echo {A9377239-477A-DD22-6E21-75912A95FD08} 0xFFFFFFFF 128 SQLNCLI10 >> providers.txt 
echo {2DA81B52-908E-7DB6-EF81-76856BB47C4F} 0xFFFFFFFF 128 SQLNCLI11 >> providers.txt 

相對

SQLNCLI.1                                {BA798F36-2325-EC5B-ECF8-76958A2AF9B5}
SQLSERVER.09                             {AB6D5EEB-0132-74AB-C5F5-B23E1644DADA}
SQLSERVER.10                             {48D59D84-105B-00FA-6B49-03462F696737}
SQLSERVER.11                             {B2A28C42-A7C2-1563-97CC-3BE49FDA19F9}

所以我將批處理文件更新為:

echo {BA798F36-2325-EC5B-ECF8-76958A2AF9B5} 0xFFFFFFFF 128 SQLNCLI > providers.txt 
echo {48D59D84-105B-00FA-6B49-03462F696737} 0xFFFFFFFF 128 SQLNCLI10 >> providers.txt 
echo {B2A28C42-A7C2-1563-97CC-3BE49FDA19F9} 0xFFFFFFFF 128 SQLNCLI11 >> providers.txt 

仍然沒有運氣。我還能嘗試什麼?logparser 不使用本機客戶端嗎?

我已經獲得了要顯示在 ETL 中的數據。我做的兩件事如下:

  • 我不得不修改批處理文件以設置 32 位 BitInterface Loader:HKLM\software\Wow6432Node\Microsoft\BidInterface\Loader
  • 我修改了providers.txt如下: {BA798F36-2325-EC5B-ECF8-76958A2AF9B5} 0xFFFFFFFF 128 SQLNCLI {A9377239-477A-DD22-6E21-75912A95FD08} 0xFFFFFFFF 128 SQLNCLI10.1 {2DA81B52-908E-BBDB46-CF42-908E-BBDB46-EF81}-768E-BBDB4 0xFFFFFFFF 128 SQLNCLI11.1

嘗試明確指定-driver選項,提供本機客戶端的名稱。

引用自:https://dba.stackexchange.com/questions/105776