mysql 업글 할때...
지난번 외부로그인 문제는 답변해 주신대로 해서 정말 잘 해결했습니다. 고맙습니다 
지금 mysql 4.0을 쓰고 있는데요. 4.1이나 그 이상의 버전으로 올려볼까 하는데, 검색해 보니깐 4.1 이상에선 password()가 틀려서 로그인이 안된다는 답변이 있네요.
password 로 검색해 보니깐
http://www.sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=14556
이런 답변을 해 주셨던데 무슨 뜻인지 모르겠습니다 ㅜㅠ
password를 한방에 mysql4.1 이상에서 쓸 수 있게 변환하는 법을 좀 조언해 주세요...
|
댓글을 작성하시려면 로그인이 필요합니다.
댓글 3개
lib/common.lib.php파일중 아래부분
function sql_password($value)
{
// mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes
// mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes
$row = sql_fetch(" select password('$value') as pass ");
return $row[pass];
}
중에서 password를 old_password로 수정하시면 그대로 사용가능합니다.
해결방법은 php의 경우에는 mysqli extension과 같이 mysql 4.1 전용 extension을 사용해야 하는데, mysqli extension을 사용할 수 없는 경우, 즉 mysql은 4.1 로 올렸는데, php는 mysqli extension을 제공하지 않는 php4 를 사용해야 하는 경우나, 또는 기존의 프로그램들이 mysql extension 을 사용하고 있고, 수정하기에는 너무 양이 많을 경우에는 my.cnf 에서 identified 나 password 함수를 예전의 방식대로 사용 할 수 있도록 다음의 설정으로 기본 password 함수를 그대로 사용할 수 있습니다.
my.cnf 에 다음의 설정을 추가합니다.
old_passwords = 1
이 설정은 grant 문의 identified 나 password 함수를 예전 버전의 방식으로 작동하도록 합니다. 임시로 이렇게 처리를 할수 있으나, 최종적으로는 새로운 암호화 방식을 사용할 수 있도록 프로그램을 수정을 하는 것이 좋습니다.
@oops.org
어차피 업을 하실거라면 mysql 5.0.x 으로 하시는 것이 한번의 수고를 더는 방법일 것입니다.