ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

Jmnote (토론 | 기여)님의 2012년 2월 3일 (금) 20:40 판 (→‎해결 방법)

1 문제상황

[root@jmnote ~]# php -f update_0.php
PHP Warning:  mysql_connect(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /root/update_0.php on line 2

2 확인

  • mysql.sock의 위치를 확인
[root@jmnote ~]# find / -name mysql.sock
/opt/lampp/var/mysql/mysql.sock
[root@jmnote ~]# netstat -an | grep mysql
unix  2      [ ACC ]     STREAM     LISTENING     780037 /opt/lampp/var/mysql/mysql.sock
  • php.ini의 위치를 확인
[root@jmnote ~]# find / -name php.ini
/etc/php.ini
/opt/lampp/etc/php.ini

3 해결 방법 1

[root@jmnote ~]# /opt/lampp/bin/php update_0.php

4 해결 방법 2

  • /var/lib/mysql/ 디렉토리를 생성
  • mysql.sock 심볼릭 링크 설정
[root@jmnote ~]# mkdir /var/lib/mysql/
[root@jmnote ~]# ln -s /opt/lampp/var/mysql/mysql.sock /var/lib/mysql/mysql.sock
[root@jmnote ~]# ll /var/lib/mysql
total 0
lrwxrwxrwx 1 root root 31 Feb  3 15:51 mysql.sock -> /opt/lampp/var/mysql/mysql.sock
[root@jmnote ~]# php update_0.php
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}