Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Wer benutzt PHP 5.3 mit mysqlnd [oder auch nicht]?

19 views
Skip to first unread message

Ulf Wendel

unread,
Feb 17, 2011, 2:00:38 PM2/17/11
to
... ich wüsste gerne wer es benutzt oder es meidet. Und falls es
gemieden wird, warum.

php.net/mysqlnd

Ralf Zschemisch (r23)

unread,
Feb 17, 2011, 7:14:17 PM2/17/11
to
Hallo Ulf,

Am 17.02.2011 20:00, schrieb Ulf Wendel:
> Und falls es gemieden wird, warum.

Ich habe deinen Artikel in meine Todo Liste für dieses Jahr gelegt.
http://www.phphatesme.com/blog/mysql/ulf-wendel-und-das-mysql-mofa/

Ich persönlich compiliere PHP seit Jahren nicht mehr und mache zurzeit
auch einen großen Bogen um PECL. Immer wenn ich von dort etwas *eben*
installieren möchte wird dies zu einem Affentanz auf meinem System.
Und wenn ich an dem System bastel verdiene ich kein Geld.

Des weiteren habe ich noch genug Scripte in der Anwendung die noch
nicht unter PHP 5.3.x laufen.

Und ein php_mysqlnd Package gibt es für mich noch nicht.

> php.net/mysqlnd

Wer versteht schon die Installations - Anleitung wenn er noch nie
compiliert hat?

Aber in diesem Jahr möchte ich auch Mova fahren können

cu

ralf

--
Pop Art Shop http://www.r23.de
Skizzen Blog http://blog.r23.de

Ulf Wendel

unread,
Feb 18, 2011, 5:42:26 AM2/18/11
to Ralf Zschemisch (r23)
Moin Ralf!

Am 18.02.2011 01:14, schrieb Ralf Zschemisch (r23):
> Am 17.02.2011 20:00, schrieb Ulf Wendel:
>> Und falls es gemieden wird, warum.
>
> Ich habe deinen Artikel in meine Todo Liste für dieses Jahr gelegt.
> http://www.phphatesme.com/blog/mysql/ulf-wendel-und-das-mysql-mofa/
>
> Ich persönlich compiliere PHP seit Jahren nicht mehr und mache zurzeit
> auch einen großen Bogen um PECL. Immer wenn ich von dort etwas *eben*

Das Query Cache Plugin (mysqlnd_qc) ist Bestandteil von PECL.

Die Bibliothek (mysqlnd), welche durch das Plugin erweitert wird, ist
Bestandteil des PHP 5.3 Core. Mysqlnd lebt nicht in PECL.

> installieren möchte wird dies zu einem Affentanz auf meinem System.
> Und wenn ich an dem System bastel verdiene ich kein Geld.

Ich frage nicht nach dem Plugin (mysqlnd_qc). Ich frage nach der
Bibliothek (mysqlnd).

> Des weiteren habe ich noch genug Scripte in der Anwendung die noch
> nicht unter PHP 5.3.x laufen.

Ok, PHP 5.3 nicht im Einsatz.

> Und ein php_mysqlnd Package gibt es für mich noch nicht.

Falls DU ein PECL-Paket meinst, so wird es das auch nie geben. Falls Du
ein Paket meinst, welches eine API wie eine der Extensions ext/mysql,
ext/mysqli oder PDO_MYSQL beinhaltet, so wird es das auch nie für
mysqlnd geben.

>> php.net/mysqlnd
>
> Wer versteht schon die Installations - Anleitung wenn er noch nie
> compiliert hat?

Ok, wer nicht kompiliert und die ggf. fetten PHP's aus den
Distributionen benutzt....

Alle PHP Windows Binaries von php.net benutzen mysqlnd.

Ralf Zschemisch (r23)

unread,
Feb 18, 2011, 6:47:15 AM2/18/11
to
Am 18.02.2011 11:42, schrieb Ulf Wendel:

danke für die mail... grummel :(


> Am 18.02.2011 01:14, schrieb Ralf Zschemisch (r23):
>> Am 17.02.2011 20:00, schrieb Ulf Wendel:

> Das Query Cache Plugin (mysqlnd_qc) ist Bestandteil von PECL.
>
> Die Bibliothek (mysqlnd), welche durch das Plugin erweitert wird, ist
> Bestandteil des PHP 5.3 Core. Mysqlnd lebt nicht in PECL.

ich sollte mir den Text evtl. doch noch mal durchlesen?

in meiner
~/etc/php5/conf.d/mysql.ini
wird eine mysql.so verwendet.

eine mysqlnd.ini finde ich nicht

in dem Verzeichnis
~/usr/lib64/php5/
gibt es auch keine mysqlnd.so.

Ich verwende PHP 5.3.5.-51.4

> Ich frage nicht nach dem Plugin (mysqlnd_qc). Ich frage nach der
> Bibliothek (mysqlnd).

Wenn diese Bibliothek Bestandteil von Php 5.3.5 ist - so finde ich diese
auf meinem System nicht.

> Ok, wer nicht kompiliert und die ggf. fetten PHP's aus den
> Distributionen benutzt....

Ich kompiliere zurzeit nicht mehr selbst und verwende fertige PHP's
von den Distributionen.

> Alle PHP Windows Binaries von php.net benutzen mysqlnd.

mmh... ok - wenn ich unter Xampp etwas bastel steht mir
dann mysqlnd zur Verfügung ;)

phpInfo() sagt, dass ich es auf dem System habe. Dies
wusste ich bis eben nicht.

Ulf Wendel

unread,
Feb 18, 2011, 7:28:41 AM2/18/11
to
Hallo Ralf,

Am 18.02.2011 12:47, schrieb Ralf Zschemisch (r23):
> Am 18.02.2011 11:42, schrieb Ulf Wendel:
>
> danke für die mail... grummel :(

wenn ich Dich bloßgestellt oder beleidigt habe, dann möchte ich mich
entschuldigen.

Alle deine Reaktion waren sehr hilfreich für mich. Ich fürchtete schon,
daß "mysqlnd" kein Begriff ist, der jedem geläufig ist. Du bist
überhaupt keine Ausnahme. Anderen, teils sehr prominenten PHP-Anwendern,
geht es ebenso.

>> Am 18.02.2011 01:14, schrieb Ralf Zschemisch (r23):
>>> Am 17.02.2011 20:00, schrieb Ulf Wendel:
>
>> Das Query Cache Plugin (mysqlnd_qc) ist Bestandteil von PECL.
>>
>> Die Bibliothek (mysqlnd), welche durch das Plugin erweitert wird, ist
>> Bestandteil des PHP 5.3 Core. Mysqlnd lebt nicht in PECL.
>
> ich sollte mir den Text evtl. doch noch mal durchlesen?

Nein, nur die folgenden drei Ansätze.

Jede PHP-MySQL Anwendung benutzt eine der drei PHP Extensions mysqli,
mysql oder PDO_MySQL. Die Extensions stellen dem PHP-Anwender eine API
bereit. Die Extensions benutzen eine C-Bibliothek, um sich mit MySQL zu
verbinden.

Seit PHP 5.3 gibt es zwei C-Bibliotken, welche von den Extensions
benutzt werden konnen: libmysql[client]/MySQL Client Library und
mysqlnd. Der Quellcode von mysqlnd ist ein Bestandteil von PHP 5.3,
technisch gesehen ist es eine Extension ohne öffentliche API - ext/mysqlnd.

Bei der Kompilierung von PHP kann jede der drei PHP Extensions mysqli,
mysql oder PDO_MySQL entweder - wie seit jeher - gegen libmysql[client]
gelinkt werden oder gegen mysqlnd.

> in dem Verzeichnis
> ~/usr/lib64/php5/
> gibt es auch keine mysqlnd.so.
>
> Ich verwende PHP 5.3.5.-51.4

Dann ist dein PHP ohne Support für mysqlnd gebaut worden.

>> Ok, wer nicht kompiliert und die ggf. fetten PHP's aus den
>> Distributionen benutzt....
>
> Ich kompiliere zurzeit nicht mehr selbst und verwende fertige PHP's
> von den Distributionen.

Damit gibt Du mir einen wichtigen Hinweis. Danke.

>> Alle PHP Windows Binaries von php.net benutzen mysqlnd.
>
> mmh... ok - wenn ich unter Xampp etwas bastel steht mir
> dann mysqlnd zur Verfügung ;)

Ich hatte gehofft die Jungs sind inzwischen umgestiegen...

> phpInfo() sagt, dass ich es auf dem System habe. Dies
> wusste ich bis eben nicht.

... auf dem XAMPP? Ok.

Danke,
Ulf

Carsten Wiedmann

unread,
Feb 18, 2011, 7:50:21 AM2/18/11
to
Am 18.02.2011 12:47, schrieb Ralf Zschemisch (r23):
> in meiner
> ~/etc/php5/conf.d/mysql.ini
> wird eine mysql.so verwendet.

Das ist eben die mysql-extension. Ob die mysql-extension die libmysql
oder mysqlnd benutzt kannst du über phpinfo() rausfinden. Oder in der Shell:
| php -i | grep 'Client API library version'


> eine mysqlnd.ini finde ich nicht
>
> in dem Verzeichnis
> ~/usr/lib64/php5/
> gibt es auch keine mysqlnd.so.

mysqlnd wird eigentlich nicht shared gebaut und ist normal statisch im
Core mit drin, weshalb es normal auch keine "mysqlnd.so" gibt.

Du könntest auch hier phpinfo() befragen oder in der Shell:
| php -n -m | grep 'mysqlnd'

Sollte es doch shared gebaut sein, dann taucht es so in jedem Fall auf,
wenn vorhanden:
| php -m | grep 'mysqlnd'


Gruß,
Carsten

Karl Pflästerer

unread,
Feb 18, 2011, 11:52:00 AM2/18/11
to
Ulf Wendel <ulf.w...@phpdoc.de> writes:

> ... ich wüsste gerne wer es benutzt oder es meidet. Und falls es
> gemieden wird, warum.

Ich habe hier einen sehr gemischten MySQL Versions Zoo. Darunter sind
auch noch Server mit MySQL 4 . Solange diese existieren und produktiv
laufen werde ich PHP weiterhin mit der mysql Extension kompilieren
müssen. Damit die PHP Versionen auf verschiedenen Servern gleich sind,
kann ich erst dann mysqlnd einsetzen, wenn ich nur noch mit MySQL >= 5.0
zu tun haben werde.

Ich warte schon sehr darauf (die Artikel über mysqlnd verfolge ich
immer) und in meiner Testumgebung habe ich PHP auch mit mysqlnd
kompiliert.

KP

Carsten Wiedmann

unread,
Feb 18, 2011, 3:25:04 PM2/18/11
to
Am 18.02.2011 17:52, schrieb Karl Pflästerer:
> Ich habe hier einen sehr gemischten MySQL Versions Zoo. Darunter sind
> auch noch Server mit MySQL 4 . Solange diese existieren und produktiv
> laufen werde ich PHP weiterhin mit der mysql Extension kompilieren
> müssen.

Nur um das nochmals klar zustellen. Die Frage war nicht ob du/jemand die
mysql-Extension benutzt oder nicht, sondern wie diese mysql-Extension
(oder mysqli / PDO_mysql) selbst auf den MySQL-Server zugreift:
- über die libmysql
- oder über mysqlnd


> kann ich erst dann mysqlnd einsetzen, wenn ich nur noch mit MySQL>= 5.0
> zu tun haben werde.

Voraussetzungen für mysqlnd wären:
PHP 5.3
MySQL-Server >= 4.1


Gruß
Carsten

Karl Pflästerer

unread,
Feb 18, 2011, 6:10:11 PM2/18/11
to
Carsten Wiedmann <carste...@gmx.de> writes:

> Am 18.02.2011 17:52, schrieb Karl Pflästerer:
>> Ich habe hier einen sehr gemischten MySQL Versions Zoo. Darunter sind
>> auch noch Server mit MySQL 4 . Solange diese existieren und produktiv
>> laufen werde ich PHP weiterhin mit der mysql Extension kompilieren
>> müssen.
>
> Nur um das nochmals klar zustellen. Die Frage war nicht ob du/jemand
> die mysql-Extension benutzt oder nicht, sondern wie diese
> mysql-Extension (oder mysqli / PDO_mysql) selbst auf den MySQL-Server
> zugreift:
> - über die libmysql
> - oder über mysqlnd

Ich habe die Frage schon gelesen. Und da ich schrieb, dass ich auch noch
Server mit MySQL 4 unterstütze, ist klar, warum ich mysqlnd noch nicht
einsetzen kann.


>
>> kann ich erst dann mysqlnd einsetzen, wenn ich nur noch mit MySQL>= 5.0
>> zu tun haben werde.
>
> Voraussetzungen für mysqlnd wären:
> PHP 5.3
> MySQL-Server >= 4.1

Eben. Man kann nicht immer so schnell updaten, wie man gerne möchte.

KP

Carsten Wiedmann

unread,
Feb 19, 2011, 3:59:44 AM2/19/11
to
Am 19.02.2011 00:10, schrieb Karl Pflästerer:
>>> laufen werde ich PHP weiterhin mit der mysql Extension kompilieren
>>> müssen.
>>
> Ich habe die Frage schon gelesen. Und da ich schrieb, dass ich auch noch
> Server mit MySQL 4 unterstütze, ist klar, warum ich mysqlnd noch nicht
> einsetzen kann.

Da habe ich wohl deine erste Antwort falsch gelesen. Das liest sich für
mich, als würdest du wegen 4.0 mysql anstatt z.B. mysqli benutzen. Sorry.

Gruß
Carsten

Carsten Wiedmann

unread,
Feb 19, 2011, 5:17:13 AM2/19/11
to
Am 17.02.2011 20:00, schrieb Ulf Wendel:
> ... ich wüsste gerne wer es benutzt oder es meidet. Und falls es
> gemieden wird, warum.

Dann doch auch noch eine Antwort von mir dazu. Wie wohl viele benutze
ich i.d.R. das, was über das jeweilige Paketsystem autom.
installiert/gebaut wird:
- FreeBSD -> mysqlnd
- Debian -> libmysql

Entgegen dem Mainstream benutze ich unter Windows noch die libmysql.
Wobei, mittlerweile kann man da ja auch wieder DNS-Namen anstatt IPs als
Hostname nehmen (IPv6 Problem). Könnte man dort auch wechseln. Bleibt noch:
| Named pipes support for Windows was added in PHP version 5.4.0.

Wo gibt's dieses PHP 5.4.0?

Gruß
Carsten

Ulf Wendel

unread,
Feb 21, 2011, 4:03:39 AM2/21/11
to
Am 19.02.2011 11:17, schrieb Carsten Wiedmann:
> | Named pipes support for Windows was added in PHP version 5.4.0.
>
> Wo gibt's dieses PHP 5.4.0?

Das wüsste ich auch gerne. Warum können sich die php.net Leutchen nicht
auf einen Namen für ihre Entwicklungsversion einigen und haben 5.3.99
gewählt wo doch 5.4 so naheliegend gewesen wäre.

trunk halt...

Ulf

Carsten Wiedmann

unread,
Feb 21, 2011, 9:36:41 AM2/21/11
to
Am 21.02.2011 10:03, schrieb Ulf Wendel:
>> Wo gibt's dieses PHP 5.4.0?
>
> trunk halt...

Schad es das (Pipes) nicht schon für's kommende 5.3.6 gibt. Und vom
Trunk gibt's gerade keine fertigen Snapshot Binaries.

(und mit 'ner einfachen Anpassung von mysqlnd.c/mysqlnd_net.c in 5.3
scheint's ja auch nicht getan zu sein)

Gruß,
Carsten

Ulf Wendel

unread,
Feb 21, 2011, 11:31:16 AM2/21/11
to Carsten Wiedmann
Am 21.02.2011 15:36, schrieb Carsten Wiedmann:
> Am 21.02.2011 10:03, schrieb Ulf Wendel:
>>> Wo gibt's dieses PHP 5.4.0?
>>
>> trunk halt...
>
> Schad es das (Pipes) nicht schon für's kommende 5.3.6 gibt. Und vom

Die Änderung ist zu groß für ein Maintenance Release.

> Trunk gibt's gerade keine fertigen Snapshot Binaries.

Das ist jenseits meiner Möglichkeiten. Windows willste, oder: Gibt es da
nicht ein neues Buch in dem die signifikant verbesserte Zusammenarbeit
des PHP-Windows-Teams und PHP gelobhudelt wird?

Ulf

0 new messages