This is not a frequent error but can arise in situations if the number of mysql connections exceeds the Mysql max_connections configuration value.
To quote from MySQL site,
If you get a Too many connections error when you try to connect to the mysqld server, this means that all available connections are in use by other clients.
I also faced this situation and tried several solution but to no avail. Finally what worked was the command mentioned below.
sudo killall - sigterm mysqld
Try this only if nothing else works.