MySQL 데몬 소켓 에러 처리
author 관리자 date 2003-11-17 hit 113 HIT
Warning: Can't connect to local MySQL server through socket '/home/mysql/mysql.sock' (111) in /home/dspaper/public_html/board/index.html on line 15


[문제의 원인]
실제로 mysqld 에 의한 socket 파일은 /tmp/mysql.sock 에 존재하는데 PHP 나 mysql 과 같은 프로그램들은 그 파일을 /var/lib/mysql/mysql.sock 에서 찾는다. 그러니 당연히 mysqld 와 의사소통이 될리가 없고, 접속이 안된다고 에러가 납니다.

[해결방법]
1. ln -sf /tmp/mysql.sock /var/lib/mysql/mysql.sock
이 해결법은 가장 간단하게 할 수 있지만 문제점은 리부팅 되고 나면 그때마다 다시 이 soft link 를 걸어 줘야 합니다.
왜냐하면 이 파일은 일반적인 파일이 아닌 unix socket 파일이기 때문입니다.

2. msyqld 기동시에 --socket=/var/lib/mysql/mysql.sock 라는 옵션을 추가
이 방법은 강제적으로 소켓 파일을 원하는 디렉토리에 만들도록 해 줍니다.
그러므로 mysqld 의 소켓파일이 저 디렉토리에 생성만 된다면 문제는 해결이 되겠지요.

3. PHP 연동시 client 측에서 socket 파일의 위치를 지정해 주는 방법
$conn = mysql_connect("localhost:/tmp/mysql.sock","db_user","db_passwd");
이 방법은 클라이언트 측에서 서버측의 소켓파일의 위치를 명시해 주는 방법입니다.
(얼마나 이런 문제가 많았으면 저런 방법까지 생겼을꼬....)

대부분의 경우 위 3가지 방법으로 다 해결이 됩니다.
목록보기
17  데이타 덤프 와 복구  2006-10-21 293
16  원격 접속 열기  2006-05-26 293
15  조인 쿼리 예제  2006-05-04 215
14  MySql 통합 접속툴 - phpMyAdmin-2.8.0.3 설치  2006-04-24 313
13  다양한 쿼리 예제들  2005-10-24 255
12  [쿼리문] 데이타 파일에서 자료 읽어오기 (load data)  2005-09-19 141
11  두근두근만화방 로그변환 DB 업데이트 소스  2005-09-16 197
10  Group by 사용 예제  2004-10-04 400
9  중복행체크.. Distinct 사용..  2004-10-04 365
8  MySQL DB 가 깨졌을때 살리는법  2003-11-17 255
7  MySQL 복구하기  2003-11-17 309
6  MySQL 유저 등록하기 (원격접속포함)  2003-11-17 251
5  MySQL 데이타를 text 혹은 excel 파일로 받는 법  2003-11-17 161
4  필드 최적화 체크 방법  2003-11-17 132
3  초기 루트 사용자 설정  2003-11-17 127
1 2