2016-05-08 1 views
3

J'essaie de me connecter à un serveur Pervasive Sql qui fonctionne sous Windows 10 à partir d'un serveur Ubuntu 14.04.4.Utiliser UnixODBC et FreeTDS pour se connecter au serveur Pervasive SQL dans ubuntu?

J'utilise les services suivants pour essayer se connecter au serveur:

FreeTDS 
unixODBC 

Avant de commencer j'ai essayé de ping la machine hôte de la console vm avec succès. Puis, exécutez la commande suivante pour vérifier que FreeTDS est correctement installé.

tsql -C 

qui sont revenus:

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

[freetds.conf] situé dans [/ usr/local/etc] contient:

[PSQLServer] 
host  = **IP** 
port  = **PORT** 
tds version = 8.0 

[odbc.ini] situé dans [/ usr/local/etc] contient:

[PSQLClient] 
Description = Pervasive SQL Client Settings 
Driver  = FreeTDS 
ServerName = PSQLServer 
Database = **DBNAME** 
Trace  = No 
UID   = **USERNAME** 
PWD   = **PASSWORD** 
TDS_Version = 8.0 

[odbcinst.ini] locat en utilisant

[FreeTDS] 
Description = FreeTDS unixODBC Driver 
Driver  = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so 
Setup  = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so 
TDS_Version = 8.0 

Je fatigué la commande tsql ajoutant [de TDSVER = *] pour chacune des versions de pilotes possibles résultant dans le même message d'erreur pour chaque TDSVER: ed dans [/ usr/local/etc] contient.

* [5.0], * [6.0], * [7.0], * [7.1], * [7.2], * [7.3], * [7.4], * [8,0]

Lors du test connexion en utilisant la commande suivante:

TDSVER=8.0 tsql -S PSQLClient -U **USERNAME** -P **PASSWORD** 

qui renvoie les erreurs suivantes:

Error 20012 (severity 2): 
     Server name not found in configuration files. 
locale is "en_ZA.UTF-8" 
locale charset is "UTF-8" 
using default charset "UTF-8" 
Error 20013 (severity 2): 
     Unknown host machine name. 
There was a problem connecting to the server 

Après avoir essayé ce qui précède, je puis essayé de la commande isql:

isql -v PSQLClient **USERNAME** **PASSWORD** 

qui renvoie les messages d'erreur suivants:

[S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source 
[01000][unixODBC][FreeTDS][SQL Server]Unknown host machine name. 
[ISQL]ERROR: Could not SQLConnect 

Est-il même possible de se connecter à [SQL Pervasive] via [nœud odbc] et si oui, qu'est-ce que je fais mal?

Toute aide serait grandement appréciée!

+0

Pas une réponse, mais pour affiner le problème de version TDS: 8.0 est obsolète et sera réutilisé dans une future version. Pour 0,95, si vous utilisez l'équivalent SQL Server de 2008 ou supérieur, utilisez 7.3. Je ne suis pas sûr si les mappages Pervasive vers une certaine version de SQL Server. – FlipperPA

Répondre

4

Les versions les plus récentes de Pervasive/Actian PSQL supportent les clients Linux et disposent d'un pilote ODBC pour Linux. Puisque vous utilisez Windows 10, vous devriez probablement utiliser PSQL v12. Si vous utilisez v12, vous pouvez télécharger le client Linux au http://www.pervasive.com/database/Home/Products/PSQLv12.aspx. Il y a un RPM et un TAR disponibles.