>> Edit article
이름
제목
패스워드
: 이렇게 나오고 콘솔상에서 mysql 하고 엔터치면 : Error2002: can`t connect to local mysql server through : socket`/var/lib/mysql/mysql.sock`(111) : 이렇게 나옵니다. 답변을 기대하면서 읽어주셔서 감사합니다. : : -- : 희망... 이건 제가 보기엔 레드햇 7.0의 mysql패키지의 버그같습니다. 7.0베타때부 터 썼었는데 7.0베타때는 아예 뜨지도 않더니(스크립트에서 safe_mysqld로 데몬을 실행시키지 않아서 안뜨더군요.. 고쳐주면 뜸..) 7.0정식에서는 서버 는 제대로 작동하는데 사용하기엔 몇가지 문제가 생기더군요. 일단 소켓에러부분만 보겠습니다. 먼저 mysql서버가 작동되지 않으 면 /var/lib/mysql/mysql.sock파일이 만들어 지지 않으므로 위의 에러메시지 는 당연한 것입니다. -_-; 서버를 띄우세요. 보통 /etc/rc.d/init.d/mysqld start 라고 하시면 뜰겁니다. :) 그래도 안되면 /usr/bin/mysql_install_db 라는 것 한번 실행시켜주시구요(이건 처음에 딱 한번만 해야합니다) 두번째로는 서버가 떴다고 할때 일반 사용자가 mysql.sock가 생성 된 /var/lib/mysql디렉토리에 접근을 못해서 에러가 나는 겁니다. 즉 chmod 755 /var/lib/mysql 하셔서 퍼미션 변경을 해 주시면 일반 사용자로도 에러 가 안날 것입니다(/var/lib/mysql 디렉토리의 소유주는 mysql.mysql입니다). 다음에 마지막으로 mysqld.pid 파일은 /var/run에 생겨야 되는데 이것역시 마찬가지로 mysql.pid파일을 작성하는 넘이 mysql.mysql이라서 /var/run에 mysqld.pid를 만들지 못하고 에러를 냅니다. 에러 메시지는 /var/lib/mysql 에 보면 '호스트이름.err'이라는 파일에 추가됩니다. 이 에러또한 잡으려 면 /var/run디렉토리의 퍼미션을 변경해 주거나 mysqld.pid 파일이 생기는 위치를 /tmp 정도로 잡으시면 됩니다. 각종 옵션이나 한글 소팅, 한글 에러 메시지 출력등에 관한 문제는 kldp에 서 관련 문서를 참조 하시면 됩니다. :) 저 같은 경우는 /etc/rc.d/init.d/mysqld 를 직접 수정해주고 다음 에 /etc/my.cnf라는 파일을 직접 작성하여 각종 설정을 넣어주었습니다. 물 론 my.cnf라는 파일의 설정이나 mysqld의 편집은 kldp나 http://www.mysql.com등에서 각종 문서를 참고하시고 간단한 응용력(옵션이 명령행에서 이렇게 사용되나 설정파일에는 어떻게 쓰면 이 옵션을 명령행에 안써도 되겠군.. 등등 -_-;)만 있으시면 무사 가동, 사용하실줄 믿습니다. 그리고 절대!! mysql.sock파일이 생성되는 위치를 위에 mysqld.pid처럼 /tmp 에 설정하지 마시고 무조건 /var/lib/mysql 밑에 생성되도록 하셔야합니다. 그렇지 않으면 php와 mysql을 연동할때 db커넥트 에러가 나옵니다. -_-; 설명이 장황해서 죄송합니다. 그럼 이만
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved