Dotclear

Vous n'êtes pas identifié(e).

Annonce

#1 2017-10-07 16:31:28

C@sp€r
Membre
Lieu : /dev/loop
Inscription : 2017-10-07
Site Web

connexion base de données via socket

Bonjour,

je souhaiterais que l'application se connecte au serveur de base de donnée par UDS (Unix Domain Socket). Actuellement, mon installation de Dotclear se connecte à la base de données via socket TCP (sur le port d'écoute de Mariadb), et fonctionne très bien.

J'ai essayé de modifier inc/config.php pour se connecter via fichier socket unix:

define('DC_DBHOST','unix:/run/mariadb/mariadb.socket');

Mais ça ne fonctionne pas.

J'ai aussi cherché beaucoup de doc, mais la procédure est référencée nul-part. Est-ce que ce type de connexion au serveur de base de données est supporté par Dotclear ?

Hors ligne

#2 2017-10-07 20:18:37

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : connexion base de données via socket

Bonne question, va falloir que je me documente (en gros que je re-fouille un peu dans le code) un peu avant de répondre :-)


Dotclear addicted since 2004

Hors ligne

#3 2017-10-08 06:34:59

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : connexion base de données via socket

Normalement un host positionné à

localhost:/var/run/mysqld/mysqld.sock

devrait le faire ou plutôt

localhost:/var/run/mariadb/mariadb.socket

d'ailleurs dans ce cas, sauf que…

Sauf que la présence du : (deux-points) va être mal comprise par la couche d'abstraction mysqli qui s'attend à trouver une forme

host:port

et pas

protocol:socket

quand il y a un : (deux-points) présent dans le host.

Du coup, pour l'instant, je ne vois pas comment passer outre. Ça mérite un ticket :-)


Dotclear addicted since 2004

Hors ligne

#4 2017-10-08 06:37:38

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : connexion base de données via socket


Dotclear addicted since 2004

Hors ligne

#5 2017-10-08 09:34:27

C@sp€r
Membre
Lieu : /dev/loop
Inscription : 2017-10-07
Site Web

Re : connexion base de données via socket

Salut,

merci pour le ticket. En lisant la doc de Wordpress j'avais vu "localhost:/truc.socket" que j'avais testé aussi (en vain).

Hors ligne

#6 2017-10-09 06:09:32

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : connexion base de données via socket

C'est un besoin particulier de pouvoir ce connecter via le socket plutôt que via TCP (à part pour gagner un peu de vitesse) ?


Dotclear addicted since 2004

Hors ligne

#7 2017-10-11 20:01:10

C@sp€r
Membre
Lieu : /dev/loop
Inscription : 2017-10-07
Site Web

Re : connexion base de données via socket

du tout, c'est justement pour gagner un peu de vitesse :)

Hors ligne

#8 2017-10-11 20:55:02

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : connexion base de données via socket

Ok :-)


Dotclear addicted since 2004

Hors ligne

#9 2017-10-21 11:53:51

C@sp€r
Membre
Lieu : /dev/loop
Inscription : 2017-10-07
Site Web

Re : connexion base de données via socket

Salut Franck,

j'ai vu que t'as ajouté une évolution https://dev.dotclear.org/2.0/changeset/5d6a7bba0ada

est-elle intégrée dans la dernière version (2.12.1), ou bien faut-il prendre le nightly build pour le moment ?

en tout cas, merci beaucoup pour le support rapide

Hors ligne

#10 2017-10-21 14:15:58

Franck
Footer de merde
Lieu : Paris
Inscription : 2004-11-09
Site Web

Re : connexion base de données via socket

Salut,

C'est pas un bugfix mais une évolution, donc ça sera dans la 2.13 (pas encore de date de sortie) et pas dans la prochaine 2.12.2, donc en attendant faut récupérer la nightly (canal unstable).


Dotclear addicted since 2004

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map