You probably need to check whether:
a) mysql is running
b) sockets are enabled
c) the default socket location is available
So here is how you would go about it:
a) check mysql is running
sudo ps -ef | grep -c mysql
If the count returns 0 then mysql is not running. This check will also catch if mysql has been started with safe_mysqld.
If you don't think it is running then you can issue the standard init start script.
sudo /etc/init.d/mysql start
If you check again and the answer is 0 then mysql for some reason is not starting and you have bigger problem. A good place to start is to fire up mysqld from the command line using the bare bones binary call, if something is wrong it should be pushed out to standard error on the console.
b) if the server is running you can check if it has sockets enabled by either checking my.cnf config file or by using netstat
sudo netstat -nalp | grep mysql
This should let you know if sockets are available -> they can be in the state of either CONNECTED or LISTENING. If there are no LISTENING sockets available then it could be that your server is too darn busy to talk to you. But in general if the server is running you should at least have one LISTENING socket.
c) you should check in your my.cnf file to see where the socket location is - in case it does not match the default; and whether it is not commented out.
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
or
[client]
socket = /var/run/mysqld/mysqld.sock