Utilisation des connexions persistantes
Si mysqli
est utilisé avec mysqlnd
,
lorsqu'une connexion persistante est créee, il génère un appel
COM_CHANGE_USER
(mysql_change_user()
) sur le serveur. Ceci permet la
re-authentification de la connexion.
Comme l'appel COM_CHANGE_USER
est assez lourd, il est
possible de le désactiver à la compilation. Réutiliser une connexion
persistante génèrera alors un appel COM_PING
(mysql_ping
) pour tester simplement si la connexion est
réutilisable.
L'utilisation de COM_CHANGE_USER
peut être désactivée
avec le drapeau de compilation
MYSQLI_NO_CHANGE_USER_ON_PCONNECT
. Par exemple:
shell# CFLAGS="-DMYSQLI_NO_CHANGE_USER_ON_PCONNECT" ./configure --with-mysql=/usr/local/mysql/ --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql/bin/mysql_config --enable-debug && make clean && make -j6
Ou encore:
shell# export CFLAGS="-DMYSQLI_NO_CHANGE_USER_ON_PCONNECT" shell# configure --whatever-option shell# make clean shell# make
Notez que seul mysqli
avec mysqlnd
utilise COM_CHANGE_USER
. Les autres extensions/pilotes
utilisent COM_PING
lors de l'utilisation de la connexion
persistente.