3 votes

Installation d'ODBC via HomeBrew

J'ai installé freetds et unixodbc via Homebrew, en suivant plus ou moins les instructions trouvées dans ce lien pour SQL Server et ODBC sur Mac.

J'ai dévié de ces instructions en ce qui concerne l'emplacement du pilote et de la configuration, en utilisant plutôt

Driver = /usr/local/Cellar/unixodbc/2.3.2_1/lib/libodbc.dylib
Setup = /usr/local/Cellar/unixodbc/2.3.2_1/lib/libodbc.dylib

dans le fichier /usr/local/Cellar/unixodbc/2.3.2_1/etc/odbcinst.ini car c'est là que j'ai trouvé mes bibliothèques dynamiques ODBC.

(J'ai également apporté ces changements car les Mac n'utilisent pas les fichiers *.so, c'est une nomenclature *nix, ce qui m'a un peu inquiété en suivant ces instructions, mais elles semblaient correspondre aux conseils d'autres sites, comme celui-ci pour installer RODBC sur Mac et ces excellentes instructions pour *nix.)

J'ai essayé de le lancer, fait des changements, effectué une trace via dtruss, en particulier en tapant cette commande :

dtruss isql -v odbc-test   2> junk_to_sift_through.txt

Peu importe comment j'ajuste les choses - sans les casser davantage - je continue de recevoir l'erreur suivante :

[IM004][unixODBC][Gestionnaire du pilote]L'allocation SQLAllocHandle du pilote sur SQL_HANDLE_HENV a échoué
[ISQL]ERREUR : Impossible de se connecter à SQL

Le fichier généré junk_to_sift_through.txt avec les erreurs est assez volumineux, mais voici la fin de celui-ci, où l'erreur devrait être cachée quelque part. Mais je n'arrive pas à la trouver.

open_nocancel("/usr/local/Cellar/unixodbc/2.3.2_1/etc/odbcinst.ini\0", 0x0, 0x1B6)       = 3 0
fstat64(0x3, 0x7FFF53378CB8, 0x1B6)      = 0 0
read_nocancel(0x3, "[ms-sql]\nDescription = Connexion TDS\nPilote = /usr/local/Cellar/unixodbc/2.3.2_1/lib/libodbc.2.dylib\nCompteurUsage = 1\nUsageFichier = 1\nTrace = Oui\n\0", 0x1000)        = 143 0
read_nocancel(0x3, "\0", 0x1000)         = 0 0
close_nocancel(0x3)      = 0 0
open_nocancel("/Users/mike/.odbcinst.ini\0", 0x0, 0x1B6)         = 3 0
fstat64(0x3, 0x7FFF53378CB8, 0x1B6)      = 0 0
read_nocancel(0x3, "[ms-sql]\nDescription = Connexion TDS\nPilote = /usr/local/Cellar/unixodbc/2.3.2_1/lib/libodbc.2.dylib\nCompteurUsage = 1\nUsageFichier = 1\nTrace = Oui\n\0", 0x1000)        = 143 0
read_nocancel(0x3, "\0", 0x1000)         = 0 0
close_nocancel(0x3)      = 0 0
fstat64(0x1, 0x7FFF5337CD08, 0x1000)         = 0 0
write_nocancel(0x2, "[ISQL]ERREUR : Impossible de se connecter à SQL\n\0", 0x22)       = 34 0
write_nocancel(0x1, "[IM004][unixODBC][Gestionnaire du pilote]L'allocation SQLAllocHandle du pilote sur SQL_HANDLE_HENV a échoué\n\0", 0x53)  = 83 0

Des idées par ici ?

Merci !

1voto

kenorb Points 11627

UnixODBC

L'échec de SQLAllocHandle du pilote sur SQL_HANDLE_ENV

Cause

Les nouvelles fonctionnalités de sécurité introduites dans IBM® DB2 Universal Database™ (DB2 UDB) Version 8.2 empêchent les utilisateurs d'utiliser la base de données à moins qu'ils n'appartiennent aux groupes Windows® DB2ADMNS or DB2USERS.

Solution

Ajoutez l'identifiant d'utilisateur (celui utilisé pour exécuter l'application) à soit le groupe DB2ADMNS, soit au groupe DB2USERS. Veuillez vous référer au lien sous "Informations Connexes" (ci-dessous) pour des instructions sur la façon de procéder.

Relatif :


Pilote ODBC pour SQL Server

Réinstallez les paquets en utilisant la version récente :

brew tap microsoft/msodbcsql https://github.com/Microsoft/homebrew-mssql-release
ACCEPT_EULA=y brew reinstall --no-sandbox msodbcsql mssql-tools

Remarque: Si vous rencontrez un conflit de plusieurs taps, exécutez : brew untap microsoft/mssql-preview && brew untap microsoft/msodbcsql.

Testez ensuite votre configuration SQL en exécutant : sqlcmd -S localhost ou isql -v -k .

Relatif: SQL Server : Impossible d'ouvrir la lib 'ODBC Driver 13 for SQL Server'.

Voir : Installation du pilote ODBC Microsoft pour SQL Server sur Linux et macOS.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X