模块 'socket' 没有属性 'AF_UNIX'
Module 'socket' has no attribute 'AF_UNIX'
我正在尝试 运行 本地主机上的旧 (2018) Django 项目。
然而,当我使用:python manage.py runserver 192.168.23.12:8000
我从 Python37\site-packages\pymysql\connections.py
:
line 600, in connect
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
AttributeError: module 'socket' has no attribute 'AF_UNIX'
我正在使用 Window 机器,我也尝试将 AF_UNIX
更改为 AF_INET
得到:
AF_INET address must be tuple, not str
根据评论中的阐述:
错误源于 Django MySQL 机器试图使用 UNIX 域套接字连接到 MySQL,因为它已被告知通过 settings.py
文件的数据库这样做HOST
.
但是,Windows 上没有 AF_UNIX 个套接字,所以这肯定会失败。
修复方法是使用 TCP 套接字连接到 MySQL;也就是说,将 MySQL HOST
更改为例如localhost
而不是套接字路径 /var/lib/mysql/mysql.sock
.
我正在尝试 运行 本地主机上的旧 (2018) Django 项目。
然而,当我使用:python manage.py runserver 192.168.23.12:8000
我从 Python37\site-packages\pymysql\connections.py
:
line 600, in connect
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
AttributeError: module 'socket' has no attribute 'AF_UNIX'
我正在使用 Window 机器,我也尝试将 AF_UNIX
更改为 AF_INET
得到:
AF_INET address must be tuple, not str
根据评论中的阐述:
错误源于 Django MySQL 机器试图使用 UNIX 域套接字连接到 MySQL,因为它已被告知通过 settings.py
文件的数据库这样做HOST
.
但是,Windows 上没有 AF_UNIX 个套接字,所以这肯定会失败。
修复方法是使用 TCP 套接字连接到 MySQL;也就是说,将 MySQL HOST
更改为例如localhost
而不是套接字路径 /var/lib/mysql/mysql.sock
.