mysql5에서 mysql8 업그레이드 했을때 패스워드 로그인안될때 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

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

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

본문

그누보드 + 아미나 환경에서 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;
}

추천
0

댓글 0개

전체 5,401
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT