Issue
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 SingleStoreDB Cloud does not use by default. Therefore, connecting with localhost
attempts to connect to MySQL and not SingleStoreDB Cloud.
Solutions
There are two solutions to solve this problem:
Specify 127.0.0.1
as the host instead of localhost
. That is, mysql -h 127.0.0.1 -u root
instead of mysql -h localhost -u root
. If you omit the host (mysql -u root
), the MySQL client will implicitly use localhost
.
For SingleStoreDB Cloud, change the socket
value in the /etc/mysql/my.cnf
file to the location of your SingleStoreDB Cloud socket file as shown in the example below:
[client] port = 3306 socket = /var/lib/memsql/data/memsql.sock