# Mysql conexión vía socket. Como saber donde está

## Introducción
Soy amigo de usar los sockets para casi todo lo que puedo por eficacia. Asi que una que suele ocurrirme, es cuando entro a una máquina nueva que no se donde esta.


### Revisar el Archivo de Configuración de MySQL
El archivo de configuración de MySQL generalmente se encuentra en /etc/my.cnf o /etc/mysql/my.cnf. Puedes buscar la línea que define la ubicación del socket.

```
grep -i 'socket' /etc/my.cnf /etc/mysql/my.cnf

socket = /var/run/mysqld/mysqld.sock
```

A veces no te da nada o te da error porque no encuentra alguno de los ficheros.

### Usar el Cliente MySQL

Puedes conectarte al servidor MySQL y ejecutar un comando SQL para obtener la información del socket

```
mysql -u root -p -e "SHOW VARIABLES LIKE 'socket';"

+---------------+-----------------------------+
| Variable_name | Value                       |
+---------------+-----------------------------+
| socket        | /var/run/mysqld/mysqld.sock |
+---------------+-----------------------------+
```

### Revisar el Estado del Servicio MySQL

No suele decir mucho proque depende de como esta configurado el servicio en `systemctl`

```
grep -i 'socket' /var/log/mysql/*.log /var/log/mysqld.log

● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2024-07-07 15:39:12 UTC; 4 weeks 2 days ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
   Main PID: 992459 (mysqld)
     Status: "Server is operational"
      Tasks: 66 (limit: 48144)
     Memory: 7.8G
     CGroup: /system.slice/mysql.service
             └─992459 /usr/sbin/mysqld

Warning: journal has been rotated since unit was started, output may be incomplete.
```

### lsof

```
❯  lsof -U | grep mysql
mysqld     992459            mysql    1u  unix 0xffff9411ca168000      0t0  96369986 type=STREAM
mysqld     992459            mysql    2u  unix 0xffff9411ca168000      0t0  96369986 type=STREAM
mysqld     992459            mysql    3u  unix 0xffff9411ca16b740      0t0  96369989 type=DGRAM
mysqld     992459            mysql   21u  unix 0xffff941565e79540      0t0  96373782 /var/run/mysqld/mysqlx.sock type=STREAM
mysqld     992459            mysql   25u  unix 0xffff941565e7ee80      0t0  96373785 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  235u  unix 0xffff941730f6c840      0t0 272319038 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  242u  unix 0xffff94194a1d1980      0t0 272319039 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  243u  unix 0xffff941646f8aec0      0t0 272319040 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  521u  unix 0xffff94173c81ea40      0t0 272290305 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  524u  unix 0xffff94190a088440      0t0 272290325 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  525u  unix 0xffff941837156a40      0t0 272290403 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  528u  unix 0xffff9417321b2200      0t0 272289661 /var/run/mysqld/mysqld.sock type=STREAM
mysqld     992459            mysql  529u  unix 0xffff9417321b3b80      0t0 272289664 /var/run/mysqld/mysqld.sock type=STREAM
```


##### Aviso
Esta documentación y su contenido, no implica que funcione en tu caso o determinados casos. 
También implica que tienes conocimientos sobre lo que trata, y que en cualquier caso tienes copias de seguridad.
El contenido el contenido se entrega, tal y como está, sin que ello implique ningún obligación ni responsabilidad por parte de [Castris](https://castris.com)

Si necesitas soporte profesional puedes contratar con Castris [soporte profesional](https://intranet.castris.com/store/soporte-profesional).