Breaking

Thursday, 20 September 2018

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

When the MySQL client connects to localhost, it attempts to use a socket file instead of TCP/IP. The socket file used is specified in /etc/mysql/my.cnf when the MySQL client is installed on the system. This is a MySQL socket file, which MemSQL does not use by default. Therefore, connecting with localhost attempts to connect to MySQL and not MemSQL.
There are two solutions:
  1. Specify "127.0.0.1" as the host instead of localhost, i.e. mysql -h 127.0.0.1 -u root instead of mysql -h localhost -u root. Note that if you omit the host (mysql -u root) the MySQL client will implicitly use localhost.
  2. In /etc/mysql/my.cnf you should see this near the top of the file:
    [client]
    port          = 3306
    socket        = /var/run/mysqld/mysqld.sock
    
    Change socket to the location of your MemSQL socket file. By default, this is /var/lib/memsql/data/memsql.sock.

First Solution worked for me.


No comments:

Post a Comment