PDO Socket Fehlermeldung

Hallo, ich möchte mich kurz vorstellen, ich heiße Markus

Seit einigen Tagen beschäftige ich mich erfolgsarm mit der
Installation von php 5.1.6 inkl PDO auf einem Webserver bei meinem
Provider

in der php.ini wird PDO mittlerweile angezeigt allerdings funktioniert
die Verbindung zu Mysql nicht:

'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through
socket '' (111)'

Normale "alte" Abfragen funktionieren weiterhin.

meine konfiguration:
../configure --with-zlib --with-gd --with-mysql=3D/usr --with-mysql-sock
--enable-pdo --with-pdo-mysql=3D/usr/bin/mysql --prefix=3D/usr
--datadir=3D/usr/share/php5 --mandir=3D/usr/share/man --bindir=3D/usr/bin
--libdir=3D/usr/lib --includedir=3D/usr/include --with-_lib=3Dlib
--sysconfdir=3D/etc/php5/apache2
--with-config-file-path=3D/etc/php5/apache2
--with-config-file-scan-dir=3D/etc/php5/conf.d
--with-exec-dir=3D/usr/lib/php5/bin --enable-magic-quotes --enable-libxml
--enable-session --with-pcre-regex --enable-xml --enable-simplexml
--enable-spl --disable-safe-mode --enable-sigchild --disable-debug
--enable-memory-limit --with-jpeg --with-libjpeg --with-jpeg-dir
--with-pear --enable-inline-optimization --with-apxs2=3D/usr/sbin/apxs2
--with-pear --disable-all

Was soll ich wohl noch probieren?
muck [ Do, 12 Oktober 2006 11:47 ] [ ID #1498296 ]

Re: PDO Socket Fehlermeldung

muck schrieb:
> Hallo, ich möchte mich kurz vorstellen, ich heiße Markus
>
> Seit einigen Tagen beschäftige ich mich erfolgsarm mit der
> Installation von php 5.1.6 inkl PDO auf einem Webserver bei meinem
> Provider
>
> in der php.ini wird PDO mittlerweile angezeigt allerdings funktioniert
> die Verbindung zu Mysql nicht:
>
> 'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through
> socket '' (111)'

Ich vermisse hier den Socket zwischen den ''. Kannst du mal ueber TCP
connecten um ein generelles PDO Problem auszuschliessen?


> Normale "alte" Abfragen funktionieren weiterhin.
>
> meine konfiguration:
> ./configure --with-zlib --with-gd --with-mysql=/usr --with-mysql-sock
> --enable-pdo --with-pdo-mysql=/usr/bin/mysql --prefix=/usr

Na ein '--with-mysql-sock' erscheint mir ein bisschen mager. Entweder du
gibts hier den Socket mit an oder aber du laesst das komplett Weg und
PHP holt sich die Info aus der mysql_config beim kompilieren.

Bevor du noch einmal kompilierst pruefe mal ob du in der php.ini den
mysql.socket Pfad setzen kannst. Ueberpruefe den Wert in phpinfo() und
versuche es dann mit PDO noch mal.


Gruss
Joerg

--
TakeNet GmbH http://www.takenet.de
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
Joerg Behrens [ Do, 12 Oktober 2006 12:52 ] [ ID #1498297 ]

Re: PDO Socket Fehlermeldung

Joerg Behrens schrieb:

> muck schrieb:

> > Seit einigen Tagen beschäftige ich mich erfolgsarm mit der
> > Installation von php 5.1.6 inkl PDO auf einem Webserver bei meinem
> > Provider
> >
> > in der php.ini wird PDO mittlerweile angezeigt allerdings funktioniert
> > die Verbindung zu Mysql nicht:
> >
> > 'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through
> > socket '' (111)'
>
> Ich vermisse hier den Socket zwischen den ''. Kannst du mal ueber TCP
> connecten um ein generelles PDO Problem auszuschliessen?
>

Den vermisse ich ebenfalls...
Wie connecte ich über tcp?
hab ich noch nie gemacht.

>
> > Normale "alte" Abfragen funktionieren weiterhin.
> >
> > meine konfiguration:
> > ./configure --with-zlib --with-gd --with-mysql=3D/usr --with-mysql-sock
> > --enable-pdo --with-pdo-mysql=3D/usr/bin/mysql --prefix=3D/usr
>
> Na ein '--with-mysql-sock' erscheint mir ein bisschen mager. Entweder du
> gibts hier den Socket mit an oder aber du laesst das komplett Weg und
> PHP holt sich die Info aus der mysql_config beim kompilieren.
>

hab sowohl mit als auch ganz ohne versucht, ohne Ergebnis

> Bevor du noch einmal kompilierst pruefe mal ob du in der php.ini den
> mysql.socket Pfad setzen kannst. Ueberpruefe den Wert in phpinfo() und
> versuche es dann mit PDO noch mal.
>

der paßt, denn hatte ich auch schon eingepflegt

Grüße

Markus
muck [ Do, 12 Oktober 2006 13:34 ] [ ID #1498298 ]

Re: PDO Socket Fehlermeldung

muck schrieb:
> Joerg Behrens schrieb:
>
>> muck schrieb:
>
>>> Seit einigen Tagen beschäftige ich mich erfolgsarm mit der
>>> Installation von php 5.1.6 inkl PDO auf einem Webserver bei meinem
>>> Provider
>>>
>>> in der php.ini wird PDO mittlerweile angezeigt allerdings funktioniert
>>> die Verbindung zu Mysql nicht:
>>>
>>> 'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through
>>> socket '' (111)'
>> Ich vermisse hier den Socket zwischen den ''. Kannst du mal ueber TCP
>> connecten um ein generelles PDO Problem auszuschliessen?
>>
>
> Den vermisse ich ebenfalls...
> Wie connecte ich über tcp?
> hab ich noch nie gemacht.

Benutze fuer den Connect *weder* 'localhost' noch '127.0.0.1'. Diese
Angaben immer umgeschrieben zu einem /var/run/mysql.sock oder wo immer
bei dir liegt. Teste also einmal mit dem Hostnamen oder der HostIP. Evtl
passt dann die Berechtigung nicht aber das sollte man der Fehlermeldung
entnehmen koennen.

>> Bevor du noch einmal kompilierst pruefe mal ob du in der php.ini den
>> mysql.socket Pfad setzen kannst. Ueberpruefe den Wert in phpinfo() und
>> versuche es dann mit PDO noch mal.
>>
>
> der paßt, denn hatte ich auch schon eingepflegt

Wuerde ja bedeuten das mysql.default_socket nicht fuer PDO benutzt
werden kann sondern nur fuer die normale ext/mysql|mysqli ?

Bei pdo_mysql wird nichts weiter angzeigt. Gibts im Manual dazu etwas?

Gruss
Joerg

--
TakeNet GmbH http://www.takenet.de
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
Joerg Behrens [ Do, 12 Oktober 2006 14:34 ] [ ID #1498299 ]

Re: PDO Socket Fehlermeldung

muck schrieb:

> in der php.ini wird PDO mittlerweile angezeigt allerdings funktioniert
> die Verbindung zu Mysql nicht:
>
> 'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through
> socket '' (111)'

So nebenbei, könnte man in der DSN für diese Verbindung auch den korrekten
Socket, anstatt einem Hostnamen angeben.


> Normale "alte" Abfragen funktionieren weiterhin.

Damit meinst du die MySQL-Extension? (Es gäbe ja auch noch die
MySQLi-Extension...)


> meine konfiguration:
> ./configure --with-mysql=/usr --with-mysql-sock


Das man bei "--with-mysql-sock" den Pfad/Name des Sockets mit angibt, wurde
dir ja schon gesagt. Interessiert aber nur die MySQL-Extension.


> --enable-pdo --with-pdo-mysql=/usr/bin/mysql

Die PDO-Extension übernimmt den Socket nur aus dem MySQL-Config-Script das
du hier sozusagen angibst. Nur, warum ist dein MySQL jetzt plötzlich wo
anders? Hast du 2 MySQL-Server auf deninem Rechner und welcher läuft?

(Und ist der Socket auch tatsächich da, wo ihn das MySQL-Config-Script
meldet? Könnte man ja in der "my.cnf" nochmal abändern)



Gruß
Carsten
Carsten Wiedmann [ Do, 12 Oktober 2006 15:24 ] [ ID #1498301 ]

Re: PDO Socket Fehlermeldung

Carsten Wiedmann schrieb:


>
> > Normale "alte" Abfragen funktionieren weiterhin.
>
> Damit meinst du die MySQL-Extension? (Es gäbe ja auch noch die
> MySQLi-Extension...)

genau

>
>
> > meine konfiguration:
> > ./configure --with-mysql=3D/usr --with-mysql-sock

> > --enable-pdo --with-pdo-mysql=3D/usr/bin/mysql
>
> Die PDO-Extension übernimmt den Socket nur aus dem MySQL-Config-Script =
das
> du hier sozusagen angibst. Nur, warum ist dein MySQL jetzt plötzlich wo
> anders? Hast du 2 MySQL-Server auf deninem Rechner und welcher läuft?

Das wars , jetzt läufts, amnchmal schläft man ja mit offenen Augen
:-)

>
> Gruß
> Carsten

Danke sehr, vielmals, ich hab die ganze Nacht dran rumgefummelt...

Grüße

Markus
muck [ Do, 12 Oktober 2006 16:17 ] [ ID #1498302 ]

Re: PDO Socket Fehlermeldung

Das wars:

> > meine konfiguration:
> > ./configure --with-mysql=3D/usr --with-mysql-sock

> > --enable-pdo --with-pdo-mysql=3D/usr/bin/mysql
>
> Die PDO-Extension übernimmt den Socket nur aus dem MySQL-Config-Script =
das
> du hier sozusagen angibst. Nur, warum ist dein MySQL jetzt plötzlich wo
> anders? Hast du 2 MySQL-Server auf deninem Rechner und welcher läuft?

Das wars , jetzt läufts, amnchmal schläft man ja mit offenen Augen
:-)

>
> Gruß
> Carsten

Danke sehr, vielmals, ich hab die ganze Nacht dran rumgefummelt...

Danke sehr auch an alle, auch die anderen postings haben mir geholfen,
mein Wissen deutlich erweitert, super :-)

Dieses Forum ist gebookmarked, das auf jedenfall !!!

Grüße

Markus
muck [ Do, 12 Oktober 2006 16:20 ] [ ID #1498303 ]

Re: PDO Socket Fehlermeldung

Joerg Behrens wrote:


>> Den vermisse ich ebenfalls...
>> Wie connecte ich über tcp?
>> hab ich noch nie gemacht.
>
> Benutze fuer den Connect *weder* 'localhost' noch '127.0.0.1'. Diese
> Angaben immer umgeschrieben zu einem /var/run/mysql.sock oder wo immer
> bei dir liegt.

Das stimmt so nicht. localhost wird zu einem Unix-Socket-Zugriff
(/var/run/mysql.sock), aber für 127.0.0.1 wird TCP verwendet.


Thomas
Thomas Rachel [ Do, 12 Oktober 2006 16:25 ] [ ID #1498304 ]

Re: PDO Socket Fehlermeldung

muck wrote:
^^^^ ?


> Dieses Forum ist gebookmarked,

Was für Forum?


> das auf jedenfall !!!

s/fall !!!/ Fall!/


Thomas
Thomas Rachel [ Sa, 14 Oktober 2006 23:30 ] [ ID #1500299 ]
PHP » de.comp.lang.php.datenbanken » PDO Socket Fehlermeldung

Vorheriges Thema: [FAQ/2006-10-15] Loesungen fuer deine PHP-Probleme
Nächstes Thema: Sicherheit: prepared Statement vs "gewöhnlichem" Statement