다음과 같은 에러가 나왔을 경우 저의 경우와 해결방안입니다.
같은 내용의 게시물이 많이 나왔으니 먼저 참고 하세요.
[에러내용]
[root@db mysql]# ./bin/safe_mysqld &
[2] 5111
[root@db mysql]# Starting mysqld daemon with databases from /usr/local/mysql/dat
a
mysqld daemon ended
-----------------------------------------------------------------------
[저의 사양]
os : linux redhat 6.1
mysql : Ver 9.36 Distrib 3.22.27, for pc-linux-gnu (i686)(소스설치)
설치위치 : /usr/local/mysql
------------------------------------------------------------------------
[과정]
저는 mysql권한 설정을 한 후 mysql을 shutdown한 후 다시 실행 시 윗 부분과
같은 에러가 뜨더군요.
문제는 mysql데이터베이스의 user테이블에 insert 시 passwd필드 부분을 password()함수를 사용하지 않고 insert시킨 것이 화근이 되었죠.
본 게시판에 나온 대로 여러가지 방법을 동원하였지만 실패했습니다.
마지막으로
http://database.sarang.net/board/mysql.php3?table=mysql&action=article&arg=2250 게시판에 나온대로 따라 했습니다.
1.[root@db mysql]# cd /usr/local/mysql
2.[root@db mysql]# ./bin/mysqld --socket=/tmp/mysql.sock \
--basedir=/usr/local --datadir=/usr/local/var/mysql \
이렇게 했더니 old-protocol어쩌구하면서 passwd필드가
잘 못 되었다고 나오더군요. (자세히는 기억이 안 남)
그래서 실행 옵션에 --old-protocol(역시 자세히는 기억이 안 남)을 추가하여
재실행 했습니다.
3.[root@db mysql]# ./bin/mysqld --socket=/tmp/mysql.sock \
--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data \
--old-protocol(??)
이렇게 했더니 살아 나더군요... 휴~
이상이 제가 해 온 작업입니다.
조금 두서가 없던 것 같습니다만 다른 게시판에 내용을 참고하시면 해결이 되시리라 봅니다.
|