> 데이터 베이스 > MySQL 튜토리얼 > 서버가 실행 중임에도 불구하고 Python의 '/tmp/mysql.sock' 소켓을 통해 로컬 MySQL 서버에 연결할 수 없는 이유는 무엇입니까?

서버가 실행 중임에도 불구하고 Python의 '/tmp/mysql.sock' 소켓을 통해 로컬 MySQL 서버에 연결할 수 없는 이유는 무엇입니까?

Patricia Arquette
풀어 주다: 2024-11-10 18:38:02
원래의
773명이 탐색했습니다.

Why Can't I Connect to My Local MySQL Server Through the Socket '/tmp/mysql.sock' in Python, Despite the Server Running?

MySQL 연결 오류 문제 해결: "'/tmp/mysql.sock' 소켓을 통해 로컬 MySQL 서버에 연결할 수 없습니다."

에도 불구하고 명령줄을 사용하여 MySQL 서버에 대한 연결을 설정할 수 있으므로 Python의 테스트 모음에서 연결하려는 시도가 다음 오류와 함께 실패합니다.

OperationalError: (2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)")
로그인 후 복사

'ps aux | 서버 프로세스 존재를 확인하기 위한 grep mysql'과 소켓 존재 여부를 확인하기 위한 'stat /tmp/mysql.sock'에서는 아무런 문제도 나타나지 않습니다. 또한 예외 절 아래에 열린 디버거는 동일한 매개변수를 사용하여 성공적인 연결을 허용합니다.

문제는 간헐적으로 나타나며 호스트가 '127.0.0.1'로 전환하면 다른 오류가 발생합니다.

DatabaseError: Can't connect to MySQL server on '127.0.0.1' (61)
로그인 후 복사

해결책:

다음 명령을 실행하면 문제가 해결되었습니다.

sudo /usr/local/mysql/support-files/mysql.server start
로그인 후 복사

추가 고려 사항:

  • 위 명령이 실패할 경우 연결을 시도하기 전에 mysqld가 실행 중인지 확인하세요.
  • 클라이언트 코드가 Python에 있다는 사실은 문제와 관련이 없는 것으로 보입니다.

위 내용은 서버가 실행 중임에도 불구하고 Python의 '/tmp/mysql.sock' 소켓을 통해 로컬 MySQL 서버에 연결할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿