Apache dbd Erreur interne: AH00629: Impossible de se connecter à mysql

J’essaie d’utiliser dbd avec mysql comme authentification avec Apache 2.4.

Lorsque Apache démarre, j’ai cette erreur:

[Tue May 12 13:07:18.789021 2015] [mpm_event:notice] [pid 10625:tid 140410697815936] AH00489: Apache/2.4.10 (Debian) configured -- resuming normal operations [Tue May 12 13:07:18.789118 2015] [core:notice] [pid 10625:tid 140410697815936] AH00094: Command line: '/usr/sbin/apache2' [Tue May 12 13:07:18.789469 2015] [dbd:error] [pid 10628:tid 140410697815936] (20014)Internal error: AH00629: Can't connect to mysql: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) [Tue May 12 13:07:18.789560 2015] [dbd:error] [pid 10628:tid 140410697815936] (20014)Internal error: AH00633: failed to initialise [Tue May 12 13:07:18.790282 2015] [dbd:error] [pid 10629:tid 140410697815936] (20014)Internal error: AH00629: Can't connect to mysql: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) [Tue May 12 13:07:18.790441 2015] [dbd:error] [pid 10629:tid 140410697815936] (20014)Internal error: AH00633: failed to initialise [Tue May 12 13:07:18.792481 2015] [dbd:crit] [pid 10628:tid 140410697815936] (20014)Internal error: AH00636: child init failed! [Tue May 12 13:07:18.792595 2015] [dbd:crit] [pid 10629:tid 140410697815936] (20014)Internal error: AH00636: child init failed! 

dbd_mysql.conf:

 DBDriver mysql DBDParams "host=192.168.1.2 port=3306 user=MY_USERNAME pass=MY_PASSWORD dbname=MY_DATABASE" DBDMin 2 DBDKeep 4 DBDMax 10 DBDExptime 300 DBDPersist On 

000-default.conf

 [...] DBDParams "dbname=DATABASENAME"   AuthName "Authentication" AuthType Basic AuthBasicProvider dbd AuthDBDUserPWQuery "SELECT SHA2(password, 256) AS password FROM users WHERE username = %s" require valid-user   [...] 

Si je change le mot de passe pour en mettre un invalide, j’ai reçu l’exception

 Internal error: AH00629: Can't connect to mysql: Access denied for user... 

Debian: 7.8 Apache: 2.4.10 libapr1: 1.5.1-3 (j’ai essayé de rétrograder, mais je ne peux pas)

Note: Le serveur n’a pas php ni php + mysql (libphpmysql) installé

Modifier :

my.cnf (partie client)

 [client] port = 3306 socket = /var/run/mysqld/mysqld.sock 

Edit (2):

J’ai aussi essayé d’utiliser le “odbc” pour mysql

odbc.ini:

dbd_mysql.conf

 DBDriver odbc DBDParams "datasource=MYSERVER_MYSQL_MYDATABASE" DBDMin 1 DBDKeep 1 DBDMax 10 DBDExptime 300 

/etc/odbc.ini (j’ai édité la configuration pour supprimer les données sensibles)

 [MYSERVER_MYSQL_MYDATABASE] Driver=/usr/local/lib/libmyodbc5a.so Description=MYSERVER_MYSQL_MYDATABASE SERVER=192.168.1.2 PORT= USER=MY_USER Password=MY_PASSWORD Database=MY_DATABASE OPTION=3 SOCKET= 

Si j’utilise:

 # isql MYSERVER_MYSQL_MYDATABASE +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ 

Cela fonctionne parfaitement .. mais sur le apache error.log:

 [Thu May 14 09:07:51.323638 2015] [mpm_event:notice] [pid 1605:tid 140068309481344] AH00489: Apache/2.4.10 (Debian) configured -- resuming normal operations [Thu May 14 09:07:51.323725 2015] [core:notice] [pid 1605:tid 140068309481344] AH00094: Command line: '/usr/sbin/apache2' [Thu May 14 09:07:51 2015] [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Thu May 14 09:07:51.323827 2015] [dbd:error] [pid 1608:tid 140068309481344] (20014)Internal error: AH00629: Can't connect to odbc: [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Thu May 14 09:07:51.323870 2015] [dbd:error] [pid 1608:tid 140068309481344] (20014)Internal error: AH00633: failed to initialise [Thu May 14 09:07:51 2015] [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Thu May 14 09:07:51.324332 2015] [dbd:error] [pid 1609:tid 140068309481344] (20014)Internal error: AH00629: Can't connect to odbc: [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Thu May 14 09:07:51.324430 2015] [dbd:error] [pid 1609:tid 140068309481344] (20014)Internal error: AH00633: failed to initialise [Thu May 14 09:07:51.331767 2015] [dbd:crit] [pid 1608:tid 140068309481344] (20014)Internal error: AH00636: child init failed! [Thu May 14 09:07:51.331823 2015] [dbd:crit] [pid 1609:tid 140068309481344] (20014)Internal error: AH00636: child init failed! 

Edit (3):

J’ai trouvé que je n’ai pas enregistré le pilote:

 ./myodbc-installer -d -a -n "MySQL ODBC 5.3 Driver" -t "DRIVER=/usr/local/lib/libmyodbc5a.so" 

Puis changé le “dbd_mysql.conf” avec:

 DBDriver odbc DBDParams "CONNECT='DRIVER={MySQL ODBC 5.3 Driver};SERVER=192.168.1.2;DATABASE=MY_DATABASE;UID=MY_USER;PWD=MY_PASSWORD;'" DBDMin 1 DBDKeep 1 DBDMax 10 DBDExptime 300 

Mais toujours le même problème (error.log):

 [Fri May 15 09:38:31.905733 2015] [core:notice] [pid 5215:tid 140452627486592] AH00094: Command line: '/usr/sbin/apache2' [Fri May 15 09:38:31 2015] [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Fri May 15 09:38:31.905842 2015] [dbd:error] [pid 5218:tid 140452627486592] (20014)Internal error: AH00629: Can't connect to odbc: [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Fri May 15 09:38:31.905888 2015] [dbd:error] [pid 5218:tid 140452627486592] (20014)Internal error: AH00633: failed to initialise [Fri May 15 09:38:31 2015] [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Fri May 15 09:38:31.906424 2015] [dbd:error] [pid 5219:tid 140452627486592] (20014)Internal error: AH00629: Can't connect to odbc: [dbd_odbc] Invalid DBD Parameters - open returned SQL_ERROR (-1) at /tmp/buildd/apr-util-1.5:1146 [Fri May 15 09:38:31.906528 2015] [dbd:error] [pid 5219:tid 140452627486592] (20014)Internal error: AH00633: failed to initialise [Fri May 15 09:38:31.915211 2015] [dbd:crit] [pid 5218:tid 140452627486592] (20014)Internal error: AH00636: child init failed! [Fri May 15 09:38:31.915578 2015] [dbd:crit] [pid 5219:tid 140452627486592] (20014)Internal error: AH00636: child init failed! 

Les DBDParams doivent être séparés par une virgule: DBDParams param1=value1[,param2=value2] http://httpd.apache.org/docs/2.4/mod/mod_dbd.html

dans my.conf essayez

 [client] protocol=tcp 

La référence Connexion au serveur MySQL fournit une explication sur la manière de remplacer la méthodologie de connexion par défaut.

La référence Utilisation des fichiers d’options explique vaguement quelles valeurs peuvent être placées dans le fichier my.conf. Un argument qui peut être passé à la commande mysql sur la ligne de commande (par exemple, –protocol) peut être spécifié, sans les tirets, dans le fichier d’options.