Database

MySQL 4.1.x 비밀번호 체계변경에 따른 문제점 처리

페이지 정보

본문

손상모
http://www.ihelpers.co.kr



최근에 아래와 같은 문제로 고민하는 분들이 많아 MySQL 웹사이트의 내용을 참고하여 간단하게 정리하여 보았습니다. 참고하십시요.

MySQL 4.1 이상 버전에서는 비밀번호를 해쉬알고리즘을 기반으로한 인증 프로토콜을 사용합니다.
그리고 해당 기능이 하위버전의 Client와 호환이 되지 않기에 서버를 4.1이상으로 업그레이드를 한 후에
아래와 같은 에러메세지를 접하게 될수 있습니다.

shell> mysql
Client does not support authentication protocol requested
by server; consider upgrading MySQL client

위의 문제점을 해결하기 위해서는

1. 모든 Client 프로그램을 4.1이상으로 업그레이드한다.
2. 사용하려는 계정을 4.1 이전 Client 프로그램과 통신이 가능한 이전 비밀번호 체계로 변경한다.

mysql> SET PASSWORD FOR
    -> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');

Alternatively, use UPDATE and FLUSH PRIVILEGES:

mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
    -> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;

3. --old-passwords 옵션으로 서버를 이전비밀번호 체계로 실행한다.

4.1 이후 비밀번호를 사용하는 계정을 모두 변경처리 한다.

SELECT Host, User, Password FROM mysql.user
    -> WHERE LENGTH(Password) > 16;

Source : http://dev.mysql.com/doc/mysql/en/Old_client.html

관련자료

등록된 댓글이 없습니다.
Today's proverb
“그는 너무 많이 말한다”라는 말을 자주 한다. 하지만 “그는 너무 많이 듣는다”는 비난을 들어 본 적은 없다. (노만 아우구스틴)