Page 1 sur 1

pdo_mysql vs pdo_odbc

Posté : 17 avr. 2012, 10:20
par enneite
Salut,

je peux me connecter à une base de données Mysql de 2 façons :
$bdd = new PDO("odbc:Driver={MySQL ODBC 5.1 Driver};Server=myServer;Database=madatabase;Uid=adminname;Pwd=pwd;");

//ou :

$bdd = new PDO('mysql:host=myHost;dbname=madatabase', 'adminname', 'pwd', $pdo_options);	
Ma question est quelle est la meilleure solution?
Je me dis que passer par un driver odbc peut me permettre d'établir un pool de connexion en paramétrant le php.ini par exemple, et donc améliorerait les performances.
Mais si c'est le cas, je ne sais pas quelles directives activer.

Quelqu'un a-t-il une idée ?

Re: pdo_mysql vs pdo_odbc

Posté : 17 avr. 2012, 10:56
par Mazarini
Bonjour,

J'ai toujours pensé que la connection via odbc n'était utile que pour les sgbd non géré (ou mal géré) par PHP. Dans le cas de MySQL, utiliser les fonctions native de mysql me semblait mieux.

Re: pdo_mysql vs pdo_odbc

Posté : 17 avr. 2012, 11:33
par moogli
utiliser les drivers natif, c'est effectivement mieux, ODBC étant générique ;)


@+

Re: pdo_mysql vs pdo_odbc

Posté : 17 avr. 2012, 16:32
par enneite
merci les amis pour vos réponses.

Il n'y a aucun moyen de gérer des pools de connexions avec PHP alors ?

Re: pdo_mysql vs pdo_odbc

Posté : 17 avr. 2012, 16:55
par moogli
aucune idée ^^

Pas que je sache, a priori qu'avec le driver odbc, donc a voir suivant ce que tu souhaite réellement faire.

Y a u une directive qui parle de pooling http://fr.php.net/manual/fr/ref.pdo-odb ... on-pooling.

je n'ai pas trouvé d'exemple sur le sujet, donc voir si tu a un serveur qui gère le pool et ensuite la chaîne de connexion sans user / passwd, ou avec une uri ?


@+

Re: pdo_mysql vs pdo_odbc

Posté : 17 avr. 2012, 20:03
par Mazarini
Il y a la fonction mysql_pconnect http://www.php.net/manual/fr/function.m ... onnect.php
Je ne sais pas si ca correspond à ton besoin et s'il y a un équivalent pdo

Re: pdo_mysql vs pdo_odbc

Posté : 19 avr. 2012, 22:47
par enneite
bah les connexions permanentes avec mysql_pconnect(), je ne vois pas comment ça marche.
je vais poster un sujet sur ça, tiens.
en tous cas, merci pour vos réponses.