Problem: you get the error message Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ either within LiveConfig (Server management -> Databases) or in the LiveConfig log file.
Reason: the MySQL server creates a socket file e.g. at
/var/run/mysqld/mysqld.sock, while the MySQL client expects this socket at
/tmp/mysql.sock. This problem often occurs on systems with a broken default configuration (e.g. Ubuntu 16) or with manually installed MySQL/MariaDB packages.
Solution: the socket paths for the server and for the client need to be configured with the same value. The directory
/var/run/mysqld/ is preferred over
/tmp for security reasons. In the MySQL configuration (usually
/etc/mysql/my.cnf) there’s both a configuration section for the server (
[server]) and for the client (
[client]). Search for the corresponding
socket = ... setting and adjust it accordingly.
my.cnf file contains the command
!includedir /etc/mysql/conf.d/ (usually at the end of the file), the cleanest solution is to create a file like
/etc/mysql/conf.d/client.conf and add the following lines there:
[client] socket = /var/run/mysqld/mysqld.sock
Then restart LiveConfig (to load the updated MySQL client configuration). MySQL doesn’t need to be restarted, except if you change the socket setting in the