2016-07-13 14 views
3

freetds v0.91 - tds Version nicht übereinstimmen

ich mit FreeBSD auf Ubuntu 14.04 zu einem Windows SQL Server verbinden möchten. Das FreeTDS wird mit apt-get installiert. Ich habe versucht, verschiedene tds Version mit folgenden Befehle:FreeTDS verwendet nicht konfiguriert tds Version

$ TDSVER=7.0 tsql -H xxx.xxx.xxx.xxx -U xxxx -p 1433 -P xxxxxxx

Die Protokolldatei zeigt:

... 
net.c:205:Connecting to xxx.xxx.xxx.xxx port 1433 (TDS version 7.0) 
net.c:270:tds_open_socket: connect(2) returned "Operation now in progress" 
net.c:310:tds_open_socket() succeeded 
... 

Kein Problem hier. Aber wenn ich TDSVER auf 7,4 zu ändern:

$ TDSVER=7.4 tsql -H xxx.xxx.xxx.xxx -U xxxx -p 1433 -P xxxxxxx

Die TDS-Version wird 4.2?

... 
net.c:205:Connecting to xxx.xxx.xxx.xxx port 1433 (TDS version 4.2) 
net.c:270:tds_open_socket: connect(2) returned "Operation now in progress" 
net.c:310:tds_open_socket() succeeded 
... 

Die Ausgabe des Befehls $ tsql -C ist:

Compile-time settings (established with the "configure" script) 
          Version: freetds v0.91 
      freetds.conf directory: /etc/freetds 
    MS db-lib source compatibility: no 
     Sybase binary compatibility: yes 
         Thread safety: yes 
         iconv library: yes 
         TDS version: 4.2 
           iODBC: no 
          unixodbc: yes 
       SSPI "trusted" logins: no 
          Kerberos: yes 

Ich versuchte tds Version in ~/.freetds.conf zu konfigurieren, sind die Ergebnisse dieselben.

freetds v1.00.9 - abgestimmt

Dann habe ich versucht, die Version von git und installieren unter meinem Home-Ordner heruntergeladen zu bauen. Es scheint, die Version abgestimmt ist:

$ TDSVER=7.4 .local/bin/tsql -H xxx.xxx.xxx.xxx -U xxxx -p 1433 -P xxxxxxx

... 
iconv.c:384:tds_iconv_open: done 
net.c:216:Connecting to xxx.xxx.xxx.xxx port 1433 (TDS version 7.4) 
net.c:242:tds_open_socket: connect(2) returned "Operation now in progress" 
net.c:343:tds_open_socket() succeeded 
... 

Die Ausgabe von $ .local/bin/tsql -C ist:

Compile-time settings (established with the "configure" script) 
          Version: freetds v1.00.9 
      freetds.conf directory: /home/bgdata/.local/etc 
    MS db-lib source compatibility: no 
     Sybase binary compatibility: no 
         Thread safety: yes 
         iconv library: yes 
         TDS version: auto 
           iODBC: no 
          unixodbc: yes 
       SSPI "trusted" logins: no 
          Kerberos: no 
          OpenSSL: no 
          GnuTLS: no 
           MARS: no 

Ist das ein Fehler von v0.91 oder ich habe etwas falsch gemacht? Danke.

Antwort

3

FreeTDS 0.91 unterstützt TDS Version 7.4 nicht. Ich habe eine Pull-Anforderung bekam hoffentlich machen dies deutlicher in der Dokumentation:

https://github.com/FreeTDS/freetds/pull/71/files

  • FreeTDS 1.0+ unterstützt TDS-Version bis 7.4
  • FreeTDS 0.95 unterstützt bis zu TDS-Version 7.3
  • FreeTDS 0.91 unterstützt TDS-Version bis 7.2

auch nie Verwenden Sie 8.0, es sei denn, Sie verwenden eine sehr alte Version von FreeTDS (die Sie an dieser Stelle nicht sein sollten). Das ist eine lange Geschichte, die auch in der Dokumentation behandelt wird, aber es gibt viele "Guides" im Web, die es empfehlen. Es wird auf Version 7.0 zurückgesetzt und kann Probleme verursachen.