J'ai besoin d'un tutoriel simple et complet pour établir une connexion MSSQL depuis Ubuntu.
Je pense que j'ai installé FreeTDS et UnixODBC mais les configurations sont très compliquées, je n'ai pas compris le problème.
J'ai suivi ce tutoriel: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/wiki/Platform-Installation---Ubuntu
Mais j'ai échoué.
root@hackmachine:~# isql -v example.com XXXXX XXXXXXX
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
root@hackmachine:~#
Éditer:
Avant cette modification, "/etc/odbcinst.ini" et "/etc/odbc.ini" étaient vides.
J'ai ajouté ces lignes à /etc/odbcinst.ini:
[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so
CPTimeout =
CPReuse =
FileUsage = 1
J'ai ajouté ces lignes à /etc/odbc.ini:
[project_development]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = developer
Database = project_development
[project_test]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = developer
Database = test
[project_production]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = production
Database = project_production
Je n'ai fait aucun changement sur "/etc/freetds/freetds.conf" depuis le tout début.
Pourtant, rien n'a changé.
connection
mertyildiran
la source
la source
Réponses:
Voici les instructions étape par étape (trouvées ici) :
Tout d'abord, installez unixODBC:
J'ai également installé les packages suivants (peut-être nécessaires):
Ensuite, téléchargez, décompressez, compilez et installez FreeTDS (attention, l'URL peut changer):
Tentez de vous connecter via Telnet à votre instance SQL Server:
Utilisez l'outil tsql pour tester la connexion:
Cela devrait vous demander le mot de passe, après quoi vous pouvez espérer contre espoir de voir ce beau signe:
Si cela a fonctionné, je recommande d'organiser une fête (de codage). La prochaine étape est une configuration. Ouvrez le fichier de configuration FreeTDS. /usr/local/etc/freetds.conf
Ajoutez l'entrée suivante au bas du fichier. Nous mettons en place un nom de source de données (DSN) appelé «MSSQL».
Ouvrez maintenant le fichier de configuration ODBC: /usr/local/etc/odbcinst.ini
Et ajoutez l'entrée de pilote MSSQL suivante (FreeTDS) à la fin:
Enfin, définissez le DSN dans ODBC dans le fichier odbc.ini ici /usr/local/etc/odbc.ini En ajoutant ce bit au fichier:
Testez la connexion à l'aide de l'outil isql:
Si vous voyez "Connecté!" vous êtes en or, félicitations! Sinon, je suis vraiment désolé; voir ci-dessous où il existe des ressources qui pourraient vous aider.
Redémarrez maintenant Apache et testez-le à partir de PHP en utilisant «MSSQL» comme DSN. Si quelque chose ne fonctionne pas, vous pouvez essayer d'installer tout ou partie de ces packages: mdbtools libmdbodbc libmdbtools mdbtools-gmdb
la source
Sur Trusty 14.04, j'ai eu des problèmes pour créer http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
Lorsque j'ai essayé d'exécuter une
tsql
commande, j'ai découvert qu'iltsql
pouvait être installé via apt:la source
J'espère que vous avez copié le contenu du lien vers le fichier. Vous devez mettre à jour les détails de votre serveur SQL dans le fichier "/etc/odbc.ini". Vous pouvez vous référer le lien http://guywyant.info/log/206/connecting-to-ms-sql-server-from-ubuntu/
la source
J'ai dû le faire pour Ubuntu 14.04 et 17.04, tous deux LTS 64 bits. Fonctionne probablement pour les versions ultérieures.
Installez unixodbc (connexions ODBC), freetds (connexions SQL Server) et tdsodbc (pont entre les deux précédents)
Ajoutez vos pilotes ODBC à /etc/odbcinst.ini (doit être vide)
Ajoutez vos DSN à /etc/odbc.ini (devrait également être vide)
Et c'était tout.
la source
Pour répondre à la question impliquée par:
... et en ignorant tous les trucs de configuration de FreeTDS.
Utilisez mssql-cli ( installation , utilisation ).
la source
Je travaille dans une entreprise qui utilise fortement les produits Microsoft. Cependant, je préfère travailler sur une machine Linux (Ubuntu). Plus précisément, j'utilise Ubuntu 16.04 LTS .
J'utilise DataGrip de JetBrains ou SQL Electron comme interfaces graphiques SQL. DataGrip nécessite le pilote Microsoft JDBC pour SQL Server que vous devez pointer manuellement lorsque vous ouvrez DataGrip pour la première fois. J'ai mis cela
/usr/share/java/
, mais n'importe où fonctionnera.La connexion est simple sur mon ordinateur portable Windows 10. J'ouvre simplement SQL Server Management Studio et j'utilise mes informations d'identification pour me connecter (nom d'utilisateur + mot de passe); Je n'utilise pas l'authentification Windows.
Conditions préalables
Pour se connecter depuis Ubuntu, c'est un peu ( juste un peu ) de travail supplémentaire. Tout d'abord, sur ma machine Windows 10, j'ouvre un terminal Powershell et saisis ce qui suit
et il retourne quelque chose comme
Le nom et l'adresse du serveur seront statiques, donc ce qui précède ne sera nécessaire que pour s'exécuter une fois par serveur auquel vous essayez d'accéder.
DataGrip
Ensuite, je saute sur ma machine Linux et ouvre DataGrip. Pour le
Host
type que je tape<server's address>
, Port: 1433 (c'est la valeur par défaut pour MS SQL Server). L'URL doit ressembler à quelque chose,Si vous cliquez sur
Test Connection
, il vous demandera des informations de connexion si vous ne les avez pas encore ajoutées. Et c'est tout pour DataGrip!DataGrip propose également le blog suivant, qui peut être utile aux nouveaux utilisateurs: Connexion de DataGrip à MS SQL Server
SQL Electron
Si vous ne souhaitez pas acheter DataGrip, vous pouvez utiliser SQL Electron. Les étapes sont similaires. Ouvrez SQL Electron, cliquez sur ajouter pour ajouter un nouveau serveur et pour
Server Address
taper<server's address>
, Port: 1433, et enfin vos informations de connexion. Et c'est tout!la source
Pour vous connecter à une instance MSSQL exécutée sur un serveur distant:
Suivez les étapes applicables dans cet article https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/connection-string-keywords-and-data-source-names-dsns?view=sql -server-2017
REMARQUE: Pour terminer les tests, vous devez effectuer quelques opérations supplémentaires: Modifiez /etc/odbc.ini et ajoutez ce qui suit:
Pour effectuer le test, exécutez ce qui suit dans le terminal:
Vous devriez voir une réponse "connectée".
Si vous rencontrez des difficultés, vérifiez que les ports de votre serveur Linux et Windows sont ouverts!
la source