본문 바로가기

스크랩/전산/전자

MySQL 설치/사용시 나는 에러 유형별 대처방법

나이들어 오랫만에 삽질을 했더니... 죽을 것 같다.. -_-;;;; 
옛날엔 잘 했는데.. 이젠 나도.... -_-;;

--------------------------------------------------------------------
http://blog.naver.com/bebec0/50006577827


 MySQL 설치/사용시 나는 에러 유형별 대처방법
[ MySQL 설치/사용시 나는 에러 유형별 대처방법 ] 

1. ./configure 시에 에러가 날때..

증상 : checking for tgetent in -lncurses... no
checking for tgetent in -lcurses... no
checking for tgetent in -ltermcap... no
checking for termcap functions library... configure: error: No curses/termcap library found
[root@localhost mysql-4.0.13]# make
make: *** No targets specified and no makefile found. stop.

왜 이런 메세지가 뜨는건가요?

해결책 : gcc가 없던지 아니면 패스가 안잡혀있는 경우입니다.

증상2 : configure: error: no acceptable C compiler found in $PATH
바로위에 에러메세지가 뜨는데요.,,  설치를잘못한건가요?

[root@localhost mysql-4.0.13]make를 실행하니까..

make: *** No targets specified and no makefile found.  멈춤. 
메세지가 뜨네요.... 

해결책2 : 리눅스에 gcc가 설치됐는지 확인해보세요.

rpm -qa|grep gcc

---------------------------------

2. 소스 설치시 NOTE: This is a MySQL binary distribution. 라는 메시지가 나오며

증상 : It's ready to run, you don't need to configure it! 나옵니다. 이유가?

해결책 : 바이너리를 받으셨네요. 컴파일이 필요없는.. 그러니깐 이미 컴파일한 겁니다.
걍 압축풀고 적당한 위치로 이동시키면 됩니다.

tar zxvf mysql-xx.xx.tar.gz
mv mysql-xx.xx /usr/local/
ln -s /usr/local/mysqlxx.xx /usr/local/mysql

---------------------------------

3. mysql을 실행하면 2번 에러가...

증상 : ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/m
ysql.sock' (2) 무슨 에러인지요?

해결법 : 데몬 구동시 ./safe_mysqld --user=mysql & 한번 해보세요. 

그래도 에러가 나면 ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock 해보세요.

----------------------------------

4. mysql.sock 중에 40번에러가 뭐져?

증상 : ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/m
ysql.sock' (40)

해결법 : chown mysql.mysql -R /var/lib/mysql 를 하시기 바랍니다.

그리고 참고로 php에서의 mysql socket 은 /etc/php.ini 에서 경로를 수정할 수 있습니다.

--------------------------------

5. mysql 데몬이 죽어버릴때

증상: ./mysqld_safe & 실행했습니다. 
    chown mysql .. <-- 비슷한 오류가 뜨면서 데몬이 죽어버립니다.. 

해결법 : 레드햇 리눅스라면 groupadd 와 useradd 에 '-r' 옵션을 사용해 보세요..

# useradd -r -d /usr/local/mysql mysql

이렇게 하면 500 보다 작은 UID, GID를 가진 mysql 그룹과
사용자가 생성됩니다.

-------------------------------

6. mysql 실행시 데몬 바로 죽음

증상 : 030527 22:33:39  mysqld started
030527 22:33:39  Can't start server: Bind on TCP/IP port: 주소가 이미 사용 중입니다
030527 22:33:39  Do you already have another mysqld server running on port: 3306 ?
030527 22:33:39  Aborting
030527 22:39:50  /usr/local/mysql/libexec/mysqld: Shutdown 이 완료됨!
030527 22:39:50  mysqld ended

해결법 : 3306 포트에 이미 다른 mysqld 가 실행되고 있습니다.

/mysql/scripts/mysql_config 을 열어서 포트번호 수정하세요.

-------------------------------

7. mysql-4.0.12 설치후 데몬이 안띄워지고 바로 죽네요..

증상 : 정상적으로 소스 설치하고 나서,,
   /usr/local/mysql/bin 에서 아래와 같이 실행하면,,, 데몬이 시작하자 마자 바로 죽습니다. 
   ./safe_mysqld Starting mysqld daemon with databases from /usr/local/mysql/var
   mysqld ended

그래서 에러 메세지를 보기 위해 /usr/local/mysql/var 로 이동하여 도매인.err 파일을
열어보니,, 아래와 같은 메세지가 있더군요.

mysqld started
InnoDB: Started
Fetal error: Can't open privilege tables: Can't find file: ' ./mysql/host.frm'(errno: 13)'
Aborting

해결법 : mysql_install_db 스크립트를 실행해서 초기 테이블을 생성해야 합니다. 

       ./mysql_install_db 하시면 됩니다.

------------------------------

8. mysql sock 에러 문제의 확실한 해결법

증상 : 접속하면 >/var/lib/mysql/mysql.sock 어쩌구 저쩌구 (111) 어쩌구 저쩌구..
머 이런 에러 나면서 접속 안되신 분들 많으실 겁니다.

해결법 : 문제는 간단합니다. 디렉토리 퍼미션 문제입니다.....

killall mysqld

chmod 755 -R /var/lib/mysql

chown mysql.mysql -R /var/lib/mysql

safe_mysqld --language=korean &

------------------------------

9. make 명령어를 실행하면 설치가 해제가 되거든요 

증상 : make[2]: *** No rule to make target `ctype-euc_kr.lo', needed by `bmove_upp.lo'. 멈춤. 

make[2]: 나감 `/usr/local/down/mysql-3.23.38/libmysql' 디렉토리 

make[1]: *** [all-recursive] 오류 1 

make[1]: 나감 `/usr/local/down/mysql-3.23.38' 디렉토리 

make: *** [all-recursive-am] 오류 2 

해결법 : 먼저 LD_LIBRARY_PATH에 모든 라이브러리 경로가 들어가 있어야 합니다.

이런 경우때문에 필요한 라이브러리를 찾지못해 에러가 납니다.

거의 필요한 패키지를 설치했는데도 에러가 나면

LD_LIBRARY_PATH를 확인해볼 필요가 있답니다.

------------------------------

10. mysql 설치시 gcc에러나는데 해결책 좀

증상 : 에러 내용과 커맨드는 아래와 같습니다.

# ./configure --prefix=/usr/local/mysql --with-charset=euc_kr

checking for c++... c++
checking whether the C++ compiler (c++   ) works... no
configure: error: installation or configuration problem: C++ compiler cannot create executables.

해결책 : red hat 8.0 설치시 gcc,gcc++등 여러가지 설치가 안되는게 많더군요. 

rpm으로 찾아서 다 설치하고 나서 컴파일 하면 됩니다. 

rpmfind.net에서 찾으실 수 있습니다. 에러 보고 하나하나 다 설치하시면 됩니다. 

------------------------------

11. 인스톨 설치도중 103 에러

증상 : an error occured move data process: -103 
compenent : server
mySQL 4.0 설치할 때 잘되다가 이것되문에 설치가 안되네요.. 
이전에 깔았던 mySQL 3.23 때문에 그런지.. 영.. 모르겠네요. 

해결책 : mysql이 설치된 폴더를 완전시 삭제하신 후에 다시 받으셔서 설치해보세요. 

-----------------------------

12. mysql설치 시 invalid user 오류가..

증상 : chown: mysql: invalid user
Starting mysqld daemon with databases from /usr/local/mysql/data
030417 11:42:35  mysqld ended

데몬실행시 이런 에러가 뜨네요...
어떻게 해결하면 되죠? 

해결책 : mysql 이란 유져가 유효하지 않다라는 에러로 
현재 mysql이란 계정이 존재하지 않기때문에 나는 에러입니다.

설치하신 후 mysql이란 그룹과 유저를 생성해주시고 
/usr/local/mysql/ 아래 디렉토리에 대한 권한도 주셔야 제대로 동작할 것 입니다.

-----------------------------

13. mysql 4.0.12 설치 시 "Check your system clock" 오류

증상 : mysql 4.0.12를 설치하는데...
> ./configure --prefix=/usr/local/mysql --with-charset=euc_kr 
이렇게 했는데 다음과 같은 메세지가 나옵니다.
checking build system type... i686-pc-linux
checking host system type... i686-pc-linux
checking target system type... i686-pc-linux
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... configure: error: newly created file is older than distributed files!
Check your system clock
왜 그런건지 알려주세요.. 

해결법 : mysql이 개발된 시간보다 현재시간이 늦어서(?) 생기는 문제입니다.

시간설정으로 간단히 해결할 수 있습니다.

인터넷(네트웍)이 되는 상황이라면
rdate -s time.nuri.net (잘못된 시간 설정을 올바르게 바꾸는 명령)를 하시고 
(time.nuri.net <== 이부분은 다른서버를 이용하셔도 무방)
아니면 date 명령어로 시간을 현재시간으로 설정해주세요...

예) date 06111800 (6월 11일 저녁6시)

-----------------------------

14. 설치시 configure: error: no acceptable cc found in $PATH 에러

증상 : ./configure 하면 중간에 
configure: error: no acceptable cc found in $PATH 
이라는 글씨가 써지면서 멈춰버리더군요. 다른 버전을 설치해도 마찬가지입니다.

해결법 : cc 즉 c complier 가 없다는 말입니다

c 컴파일러가 PATH에 안잡혀 있을 수 있습니다. path를 추가하거나 gcc를 다시 설치하십시요.

-----------------------------

15. config시 ERROR: 1062 Duplicate entry 'localhost-root' for key 1

증상 : mysql 소스설치 config시 
다음과 같은 에러가 나는데요..
rpm버전 삭제했는데 데몬이 살아 있나?
ps -ax | grep mysql 하면 암것도 안나오거든요.

ERROR: 1062 Duplicate entry 'localhost-root' for key 1
ERROR: 1062 Duplicate entry 'localhost-root' for key 1
030312 14:58:03 ./bin/mysqld: Shutdown Complete

해결책 : 캐시에 이전데몬이 살아있기 때문입니다.
kill 명령으로 프로세스를 완전히 죽이신 다음 다시 설치하시면 됩니다.

-----------------------------

16. configure 에러로 "error : No curses/termcap library found" 무슨 에러죠?

증상 : checking for termcap functions library... 

configure: error : No curses/termcap library found

해결책 : libtermcap-devel-xxx 패키지가 필요해서 발생하는 에러입니다.

설치시디를 넣으시고 설치를 하시면 해결됩니다. 

-----------------------------