Introduction Show Users working with MySQL can run into the error 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock (2)' when logging into the MySQL interface. This problem usually arises if MySQL can't access the mysqld.sock socket file. In this tutorial, we will go over the potential causes of the 'Can't connect to local MySQL server through socket' error and show you different methods of resolving this issue. Prerequisites
Resolving the 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)' ErrorThere are multiple ways to solve the 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock (2)' error. If one solution doesn't work, move down the list until you find the one that resolves the issue. Method 1: Check the MySQL Service1. Check the status of the MySQL service with:
2. If the service is not running, restart it by using:
3. To prevent this issue from happening, set the MySQL service to automatically start at boot:
Method 2: Verify the mysqld.sock LocationThe 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)' error also happens if MySQL can't find the mysql.sock socket file. 1. Find the current
mysqld.sock location by using the
2. Open the MySQL configuration file in a text editor of your choice. In this example, we use nano:
3. Then, add the following lines at the end of the MySQL configuration file:
Where:
Another method is to create a symlink from the location of mysqld.sock to the /var/run/mysqld directory:
4. Press Ctrl+X to close the configuration file and type Y and press Enter to save the changes you made. 4. Finally, restart the MySQL service:
Method 3: Check the MySQL Folder PermissionAnother potential cause could be that the MySQL Service can't access the /var/run/mysqld directory due to permission restrictions: 1. To resolve this issue, change the permission settings for the mysqld directory with:
Setting the permission to 2. Restart the MySQL service for the changes to take effect:
Method 4: Check for Multiple MySQL InstancesThe error also occurs if there are multiple instances of MySQL running at the same time. 1. To list all the instances of MySQL, use:
2. If there are multiple MySQL instances running, terminate them with:
3. Restart the MySQL service to start a single instance of MySQL:
Conclusion After reading this tutorial, you should have identified the cause of the 'Can't connect to local MySQL server through socket' error and applied the appropriate solution. For more help with using MySQL, consult our MySQL Commands Cheat Sheet. |