J'ai cherché des réponses liées à ma question mais je n'ai pas trouvé ce que je cherchais.CentOS 6.7 et Windows Connexion MSSQL - FreeTDS et PHP
J'ai un serveur avec Linux CentOS 6.7. Je dois vous connecter à MS SQL Server 2005 sur Windows Small Business Server 2003. Dans CentOS j'ai installé FreeTDS et je réussi à se connecter à SQL Server du terminal en utilisant cette commande:
# TDSVER=7.0 tsql -H ServerIPAdress -p 1433 -U username -P password
Pour autant que je sais que ce by-pass de commande paramètres dans freetds.conf. Maintenant, je dois me connecter à partir du script PHP. J'utilise l'extension PDO et j'ai essayé cette chaîne DSN:
$db = new PDO("dblib:version=7.0;host=ServerIPAdress;dbname=Database;","username","password");
Cela me conduit à la première erreur:
Could not find driver
Ok, je comprends que - mon installation PHP 5.3.3 ne pas pilote PDO installé dblib. Ma question: Comment installer le pilote pdo_dblib dans CentOS? De nombreux tutoriels et réponses suggèrent d'installer à travers cette commande:
yum install php5-sybase
Mais ce paquet n'existe pas:
No package php-sybase available.
Si je vérifie la configuration de tsql avec commande
tsql -C
Je reçois ces sortie:
Version: freetds v0.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
Comme je comprends que je dois configurer FreeTDS:
./configure --enable-msdblib --with-pdo-dblib=/usr/local
Mais comment puis-je configurer FreeTDS après instalation? J'ai essayé de supprimer la version actuelle, mais je ne trouve pas le moyen de le faire. J'ai aussi essayé d'installer une autre version mais la configuration ne change pas.
Tous les conseils sont appréciés.
Pour vous connecter depuis PHP, vous avez besoin de FreeTDS et d'unixODBC. PHP parle à unixODBC, et FreeTDS vous permet de vous connecter entre la couche unixODBC et SQL Server lui-même. Avez-vous testé avec 'isql' pour voir si la connexion fonctionne aussi avec unixODBC? Les erreurs ici sont également utiles, vous devrez activer la connexion là où vous le pouvez. – FlipperPA
Salut, merci de répondre. Oui, j'ai testé avec 'isql' et je peux voir l'invite SQL, pour que cela fonctionne comme il se doit. J'ai juste besoin de trouver comment établir une connexion à SQL Server à partir de PHP avec PDO. – ManOfHonor
Veuillez partager vos fichiers freetds.conf, odbcinst.ini et odbc.ini. Exécutez odbcinst -j à partir de votre terminal pour obtenir les fichiers de configuration. – chapskev