나너우리

Mysql 8.x 사용시 password 함수 처리

· 2022-01-03 (월) 18:54:56 · 7300 · 4

한동안 관리 안하던 홈페이지를 새로운 서버로 옮기면서 모든 것을 다 업데이트 했습니다.

 

그런데 로그인이 안되더군요.

 

찾아보니 mysql 8.x 에서는 pasword 함수가 없어 졌네요.

 

lib/common.lib.php의 sql_password 함수를 기존 password 대신에 CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$value')))))로 수정 해 주니 되네요.

 

function sql_password($value)
{
    // mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes
    // mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes
   //  $row = sql_fetch(" select password('$value') as pass ");
    $row = sql_fetch(" SELECT CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$value'))))) as pass ");

    return $row['pass'];
}
 

|

댓글 4개

2020년 10월 기준 8.0.22 버전이 최신이다. 8.0으로 업데이트되면서 새로운 기능을 넣기 위해 하위호환을 많이 포기했으므로, 버전 업데이트 시 주의할 필요가 있다.
라고 하는데...

mysql 8.x 를 사용하시는군요.
사용상 특이점이나 다른 사항이 발견되면 공유 부탁드립니다
@해피정 일부 테마나 게시판 스킨에 코드 호환이 있었지만 기본 기능에는 패스워드 이슈 밖에는 현재 없는 것 같습니다.
2022-01-08 (토) 16:03:09
저거땜에 8로 올렸다가 바로 5.x로 재설치했었던 기억이...
@약관동의 저도 로그인 안되서 한참을 헤멨었습니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
22-01-07 조회 5,351
22-01-07 조회 5,189
22-01-04 조회 5,708
22-01-03 조회 7,301
21-12-30 조회 5,767
21-12-30 조회 6,212
21-12-26 조회 6,749
21-12-19 조회 5,929
21-12-18 조회 6,157
21-12-17 조회 5,303
21-12-14 조회 5,827
21-12-10 조회 9,908
21-12-10 조회 5,533
21-12-08 조회 9,555
21-12-08 조회 1.1만
21-12-07 조회 6,531
21-12-04 조회 6,863
21-12-04 조회 5,498
21-12-03 조회 6,204
21-12-02 조회 5,569
21-12-02 조회 6,044
21-12-02 조회 5,788
21-12-02 조회 5,302
21-11-30 조회 6,399
21-11-23 조회 6,381
21-11-23 조회 5,530
21-11-23 조회 7,048
21-11-23 조회 6,034
21-11-23 조회 5,167
21-11-22 조회 6,234