Missing mysql.sock; yielding OperationalError: (2002, “Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)”)

后端 未结 4 658
悲哀的现实
悲哀的现实 2020-12-19 21:38

Firstly, I swear that I have looked at every single question that references this error. Nearly every solution someone offers is different, and no one seems to understand th

4条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-19 22:11

    As far as I can tell, it is either of the two things:

    1. You MySQL Server is not running, or
    2. It is running, but is not configured to use /tmp/mysql.sock as its socket

    As far as 2 is concerned, I believe that is the default setting for a freshly installed MySQL, but it doesn't hurt to check. Try looking at the contents of /etc/my.cnf. Check whether there is a line that looks like this: socket=/path/to/socket - where /path/to/socket is, as it says the file path of the socket. If there is such an entry and the file path is different than /tmp/mysql.sock, you've found your problem. Change either that line, or your Django config so they match.

    Note: In case you don't find /etc/my.cnf you can create it yourself and add the appropriate socket settings (i.e. just add the line socket=/tmp/mysql.sock) just to make sure it's properly configured.

    As far as 1 is concerned, you can follow the instructions available here and make sure your MySql server is running.

    Good luck!

提交回复
热议问题