Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Connexion à une machine SQL Server

7 réponses
Avatar
David BERCOT
Bonjour,

Depuis quelques semaines, j'essaye (sans succ=C3=A8s) de me connecter =C3=
=A0 SQL
Server =C3=A0 partir de Debian.
Mon but est, =C3=A0 terme, de le faire en PHP, mais j'aimerais d=C3=A9j=C3=
=A0 y
arriver directement, dans un shell...

J'ai donc install=C3=A9 FreeTDS et quelques d=C3=A9pendances.
Puis, j'ai configur=C3=A9 tout cela ainsi :

/etc/freetds/freetds.conf :
[global]
# TDS protocol version
tds version =3D 4.2
[etemptation]
host =3D 10.21.2.203
port =3D 1433
tds version =3D 8.0

/etc/odbc.ini :
[etemptation]
Description =3D TDS MSSQL Server
Driver =3D /usr/lib/odbc/libtdsodbc.so
Server =3D 10.21.2.203
Database =3D etemptation
Port =3D 1433
TDS_Version =3D 8.0

et enfin, /etc/odbcinst.ini :
[FreeTDS]
Description =3D TDS driver (Sybase/MS SQL)
Driver =3D /usr/lib/odbc/libtdsodbc.so
Setup =3D /usr/lib/odbc/libtdsS.so
CPTimeout =3D 5
CPReuse =3D 5
UsageCount =3D 1

Pour info, a page PHP de test est la suivante :
<?php
$cnx =3D odbc_connect("etemptation", "idep", "password");
if(!$cnx) {
echo 'problem connexion';
}
else {
echo 'connexion OK';
$sql =3D"SELECT * from HOPPOIN";
$rs =3D odbc_exec($cnx,$sql);

while(odbc_fetch_row($rs)) {

}

odbc_free_result($rs);
odbc_close($cnx);
echo 'connexion fermee';
}
?> =20

Sous Firefox, j'obtiens :
Warning: odbc_connect() [function.odbc-connect]: SQL error:
[unixODBC][FreeTDS][SQL Server]Unable to connect to data source, SQL
state S1000 in SQLConnect in /home/david.bercot/Internet/test_mssql.php
on line 2 problem connexion

Je suis donc revenu au shell, et ce n'est pas mieux :
p3010-ac-nantes:/home/david.bercot/Internet# isql -v etemptation
src/tds/login.c: tds_connect: 10.21.2.203:1433: Connexion refus=C3=A9e
[S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source
[08S01][unixODBC][FreeTDS][SQL Server]Server is unavailable or does not
exist. [ISQL]ERROR: Could not SQLConnect

Bref, quelqu'un arrive-t-il =C3=A0 se connecter =C3=A0 un serveur MS SQL ?
Si oui, avec quoi et comment ?

Merci d'avance.

David.

7 réponses

Avatar
pmenier
David BERCOT a écrit :
Bonjour,

Depuis quelques semaines, j'essaye (sans succès) de me connecter à SQL
Server à partir de Debian.
Mon but est, à terme, de le faire en PHP, mais j'aimerais déjà y
arriver directement, dans un shell...

J'ai donc installé FreeTDS et quelques dépendances.
Puis, j'ai configuré tout cela ainsi :

/etc/freetds/freetds.conf :
[global]
# TDS protocol version
tds version = 4.2
[etemptation]
host = 10.21.2.203
port = 1433
tds version = 8.0

/etc/odbc.ini :
[etemptation]
Description = TDS MSSQL Server
Driver = /usr/lib/odbc/libtdsodbc.so
Server = 10.21.2.203
Database = etemptation
Port = 1433
TDS_Version = 8.0

et enfin, /etc/odbcinst.ini :
[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
CPTimeout = 5
CPReuse = 5
UsageCount = 1

Pour info, a page PHP de test est la suivante :
<?php
$cnx = odbc_connect("etemptation", "idep", "password");
if(!$cnx) {
echo 'problem connexion';
}
else {
echo 'connexion OK';
$sql ="SELECT * from HOPPOIN";
$rs = odbc_exec($cnx,$sql);

while(odbc_fetch_row($rs)) {

}

odbc_free_result($rs);
odbc_close($cnx);
echo 'connexion fermee';
}
?>

Sous Firefox, j'obtiens :
Warning: odbc_connect() [function.odbc-connect]: SQL error:
[unixODBC][FreeTDS][SQL Server]Unable to connect to data source, SQL
state S1000 in SQLConnect in /home/david.bercot/Internet/test_mssql.php
on line 2 problem connexion

Je suis donc revenu au shell, et ce n'est pas mieux :
p3010-ac-nantes:/home/david.bercot/Internet# isql -v etemptation
src/tds/login.c: tds_connect: 10.21.2.203:1433: Connexion refusée
[S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source
[08S01][unixODBC][FreeTDS][SQL Server]Server is unavailable or does not
exist. [ISQL]ERROR: Could not SQLConnect

Bref, quelqu'un arrive-t-il à se connecter à un serveur MS SQL ?
Si oui, avec quoi et comment ?

Merci d'avance.

David.




Bonjour,

J'avais deja fait ce test et ca tournait à l'epoque.

http://blogpmenier.dynalias.net/?2005/12/06/87-connexion-ms-sql-server-avec-php-odbc

Par contre je n'ai pas pu retester depuis le passage en etch car le
serveur mssql sur le quel je testais est passe en version 2005 et les
admins ont ferme le port 1433.

Patrick


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Re-bonjour,

Le Tue, 22 May 2007 12:22:34 +0200,
pmenier a écrit :
David BERCOT a écrit :
> Bonjour,
>
> Depuis quelques semaines, j'essaye (sans succès) de me connecter à
> SQL Server à partir de Debian.
> Mon but est, à terme, de le faire en PHP, mais j'aimerais déj à y
> arriver directement, dans un shell...
>
> J'ai donc installé FreeTDS et quelques dépendances.
> Puis, j'ai configuré tout cela ainsi :
>
> /etc/freetds/freetds.conf :
> [global]
> # TDS protocol version
> tds version = 4.2
> [etemptation]
> host = 10.21.2.203
> port = 1433
> tds version = 8.0
>
> /etc/odbc.ini :
> [etemptation]
> Description = TDS MSSQL Server
> Driver = /usr/lib/odbc/libtdsodbc.so
> Server = 10.21.2.203
> Database = etemptation
> Port = 1433
> TDS_Version = 8.0
>
> et enfin, /etc/odbcinst.ini :
> [FreeTDS]
> Description = TDS driver (Sybase/MS SQL)
> Driver = /usr/lib/odbc/libtdsodbc.so
> Setup = /usr/lib/odbc/libtdsS.so
> CPTimeout = 5
> CPReuse = 5
> UsageCount = 1
>
> Pour info, a page PHP de test est la suivante :
> <?php
> $cnx = odbc_connect("etemptation", "idep", "password");
> if(!$cnx) {
> echo 'problem connexion';
> }
> else {
> echo 'connexion OK';
> $sql ="SELECT * from HOPPOIN";
> $rs = odbc_exec($cnx,$sql);
>
> while(odbc_fetch_row($rs)) {
>
> }
>
> odbc_free_result($rs);
> odbc_close($cnx);
> echo 'connexion fermee';
> }
> ?>
>
> Sous Firefox, j'obtiens :
> Warning: odbc_connect() [function.odbc-connect]: SQL error:
> [unixODBC][FreeTDS][SQL Server]Unable to connect to data source, SQL
> state S1000 in SQLConnect
> in /home/david.bercot/Internet/test_mssql.php on line 2 problem
> connexion
>
> Je suis donc revenu au shell, et ce n'est pas mieux :
> p3010-ac-nantes:/home/david.bercot/Internet# isql -v etemptation
> src/tds/login.c: tds_connect: 10.21.2.203:1433: Connexion refusée
> [S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data
> source [08S01][unixODBC][FreeTDS][SQL Server]Server is unavailable
> or does not exist. [ISQL]ERROR: Could not SQLConnect
>
> Bref, quelqu'un arrive-t-il à se connecter à un serveur MS SQ L ?
> Si oui, avec quoi et comment ?
>
> Merci d'avance.
>
> David.
>
>
Bonjour,

J'avais deja fait ce test et ca tournait à l'epoque.

http://blogpmenier.dynalias.net/?2005/12/06/87-connexion-ms-sql-server-av ec-php-odbc

Par contre je n'ai pas pu retester depuis le passage en etch car le
serveur mssql sur le quel je testais est passe en version 2005 et les
admins ont ferme le port 1433.



Je viens de tester ce que tu as écrit, et, pas mieux :-(

Franchement, j'ai beaucoup de mal car je n'arrive pas à trouver un
endroit pour commencer à chercher !!!
Sur Google, ils parlent aussi très souvent d'un outil en ligne de
commande nommé tsql, mais je n'ai pas ça... Je ne peux utiliser q ue
isql...

David.
Avatar
fra-duf-no-spam
Le 13655ième jour après Epoch,
David BERCOT écrivait:

Re-bonjour,


[...]
> Sous Firefox, j'obtiens :
> Warning: odbc_connect() [function.odbc-connect]: SQL error:
> [unixODBC][FreeTDS][SQL Server]Unable to connect to data source, SQL
> state S1000 in SQLConnect
> in /home/david.bercot/Internet/test_mssql.php on line 2 problem
> connexion
>
> Je suis donc revenu au shell, et ce n'est pas mieux :
> p3010-ac-nantes:/home/david.bercot/Internet# isql -v etemptation
> src/tds/login.c: tds_connect: 10.21.2.203:1433: Connexion refusée
> [S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data
> source [08S01][unixODBC][FreeTDS][SQL Server]Server is unavailable
> or does not exist. [ISQL]ERROR: Could not SQLConnect




[...]
http://blogpmenier.dynalias.net/?2005/12/06/87-connexion-ms-sql-server-a vec-php-odbc

Par contre je n'ai pas pu retester depuis le passage en etch car le
serveur mssql sur le quel je testais est passe en version 2005 et les
admins ont ferme le port 1433.



Je viens de tester ce que tu as écrit, et, pas mieux :-(



As-tu pensé que le port 1433 auquel tu veux te connecter est peut-à ªtre
fermé pour toi?

Commence déjà par là, ton premier message d'erreur en isql e st
"Connexion refusée" ..

D'autre part, essaye de nettoyer les posts auxquels tu réponds, c'est
mieux de ne laisser que l'essentiel ;)
Avatar
David BERCOT
Le Tue, 22 May 2007 14:36:18 +0200,
(François TOURDE) a écrit :
> Re-bonjour,
[...]
>> > Sous Firefox, j'obtiens :
>> > Warning: odbc_connect() [function.odbc-connect]: SQL error:
>> > [unixODBC][FreeTDS][SQL Server]Unable to connect to data source,
>> > SQL state S1000 in SQLConnect
>> > in /home/david.bercot/Internet/test_mssql.php on line 2 problem
>> > connexion
>> >
>> > Je suis donc revenu au shell, et ce n'est pas mieux :
>> > p3010-ac-nantes:/home/david.bercot/Internet# isql -v etemptation
>> > src/tds/login.c: tds_connect: 10.21.2.203:1433: Connexion refusà ©e
>> > [S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data
>> > source [08S01][unixODBC][FreeTDS][SQL Server]Server is
>> > unavailable or does not exist. [ISQL]ERROR: Could not SQLConnect
[...]
>> http://blogpmenier.dynalias.net/?2005/12/06/87-connexion-ms-sql-server -avec-php-odbc
>>
>> Par contre je n'ai pas pu retester depuis le passage en etch car
>> le serveur mssql sur le quel je testais est passe en version 2005
>> et les admins ont ferme le port 1433.
>
> Je viens de tester ce que tu as écrit, et, pas mieux :-(

As-tu pensé que le port 1433 auquel tu veux te connecter est peut- être
fermé pour toi?



J'y ai pensé ;-)

Commence déjà par là, ton premier message d'erreur en isql est
"Connexion refusée" ..



Je sais, mais ça a vraiment l'air générique vu tout ce que j 'ai lu à
partir de Google sur cette erreur.
J'ai déjà une application à partir d'un serveur Windows 2003 qui se
connecte sur ce poste Windows XP sur lequel tourne MSDE.
Le firewall de XP est totalement désactivé (c'est un réseau interne) et
je ne vois aucune erreur. J'ai donc du mal à comprendre pourquoi
j'obtiens cette erreur...

D'autre part, essaye de nettoyer les posts auxquels tu réponds, c'est
mieux de ne laisser que l'essentiel ;)



Oui, même si, parfois, j'ai du mal à enlever des choses ;-)

Merci.

David.
Avatar
fra-duf-no-spam
Le 13655ième jour après Epoch,
David BERCOT écrivait:

Le Tue, 22 May 2007 14:36:18 +0200,
(François TOURDE) a écrit :

As-tu pensé que le port 1433 auquel tu veux te connecter est peut- être
fermé pour toi?



J'y ai pensé ;-)



Bon :( ... Dommage, ça aurait été plus simple...

Commence déjà par là, ton premier message d'erreur en isq l est
"Connexion refusée" ..



Je sais, mais ça a vraiment l'air générique vu tout ce que j'ai lu à
partir de Google sur cette erreur.



Essaye de faire un telnet sur ce port, pour voir ce que dit le
serveur.

J'ai déjà une application à partir d'un serveur Windows 20 03 qui se
connecte sur ce poste Windows XP sur lequel tourne MSDE.



Oula... J'ai rien compris à la phrase. Qui va où et avec quoi? Tu peux
faire un parallèle avec ta config de test ?

Le firewall de XP est totalement désactivé (c'est un résea u interne) et
je ne vois aucune erreur. J'ai donc du mal à comprendre pourquoi
j'obtiens cette erreur...



Un souci d'authorisation avec le serveur? Tu as les logs du SQL
server?
Avatar
David BERCOT
Bonjour,

Le Tue, 22 May 2007 16:40:24 +0200,
(François TOURDE) a écrit :
>> As-tu pensé que le port 1433 auquel tu veux te connecter est
>> peut-être fermé pour toi?
>
> J'y ai pensé ;-)

Bon :( ... Dommage, ça aurait été plus simple...

>> Commence déjà par là, ton premier message d'erreur en i sql est
>> "Connexion refusée" ..
>
> Je sais, mais ça a vraiment l'air générique vu tout ce q ue j'ai lu à
> partir de Google sur cette erreur.

Essaye de faire un telnet sur ce port, pour voir ce que dit le
serveur.



Il ne dit rien de particulier par rapport à un telnet sur n'importe
quel port...
:~$ telnet 10.21.2.203 1433
Trying 10.21.2.203...
telnet: Unable to connect to remote host: Connection refused

> J'ai déjà une application à partir d'un serveur Windows 2003 qui se
> connecte sur ce poste Windows XP sur lequel tourne MSDE.

Oula... J'ai rien compris à la phrase. Qui va où et avec quoi? Tu peux
faire un parallèle avec ta config de test ?



En fait, j'ai une appli de production qui tourne sur un serveur Windows
2003. Cette appli se connecte sur le poste Windows XP sur lequel tourne
MSDE.
Maintenant, je souhaiterais faire la même chose à partir d'une ma chine
Debian. Et c'est là que les ennuis commencent...

> Le firewall de XP est totalement désactivé (c'est un rés eau
> interne) et je ne vois aucune erreur. J'ai donc du mal à comprendre
> pourquoi j'obtiens cette erreur...

Un souci d'authorisation avec le serveur? Tu as les logs du SQL
server?



Apparemment, le problème arrive en amont de l'identification.
Pour les logs, non, je n'ai rien. Il faudrait que je regarde si on peut
(on doit pouvoir ;-))) logger des infos avec MSDE...

David.
Avatar
Ludovic Desfontaines
> >
> Essaye de faire un telnet sur ce port, pour voir ce que dit le
> serveur.

Il ne dit rien de particulier par rapport à un telnet sur n'importe
quel port...
:~$ telnet 10.21.2.203 1433
Trying 10.21.2.203...
telnet: Unable to connect to remote host: Connection refused



C'est vraiment très bizarre. Ton message d'erreur indique pourtant
clairement (encore ici) que le service n'est pas joignable.

Es-tu sûr du port sur lequel ton serveur MSSQL tourne ? Genre,
peut-être pas le port 1433. Parce que, clairement, cela semble venir
d'ici.
Il est envisageable que les admins du serveur ait décidé (pour des
raisons de sécu) de bouger le serveur SQL (éviter les injections bien
connues sur MSSQL)

Bon courage.
Ludovic