mysql5에서 mysql8 업그레이드 했을때 패스워드 로그인안될때

· 1주 전 · 42

그누보드 + 아미나 환경에서 PHP 5.4 / MySQL 5.4로 운영하던 사이트를 사용하다가, 이번에 서버를 PHP 7.4 / MySQL 8로 업그레이드하여 이전했습니다.

 

이전 후 로그인이 정상적으로 되지 않는 현상이 발생하여 확인해보니, MySQL 8 이상에서는 sql_password() 방식이 더 이상 사용되지 않는다는 내용을 확인했습니다.


이에 따라 로그인 문제를 해결하기 위해 /lib/common.lib.phpsql_password() 관련 로직이 포함된 부분을 수정/변경하였습니다.

 

// 문자열 암호화
function get_encrypt_string($str)
{
    /*
    mysql 5.4 에서 8.0 으로 업그레이드하여 패스워드 를 php 함수로 변경
    if(defined('G5_STRING_ENCRYPT_FUNCTION') && G5_STRING_ENCRYPT_FUNCTION) {
        $encrypt = call_user_func(G5_STRING_ENCRYPT_FUNCTION, $str);
    } else {
        $encrypt = sql_password($str);
    }
    */
    $encrypt =  '*' . strtoupper(sha1(sha1($str, true)));

    return $encrypt;
}

|

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기
🐛 버그신고