메뉴 건너뛰기

Linux
2016.03.22 11:28

mysql old_password 설정

조회 수 86 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

<?php
$connect = mysql_connect("localhost", "user", "password");
mysql_select_db("mysql", $connect);
mysql_query("set variables old_passwords=0", $connect); // --> old_passwords OFF (참고로 show variables like ‘old%’; 명령을 통해 현재 설정 확인 가능)
mysql_query("update user set password=password('abc') where user = 'abc'");
?>


팁을 잘 검색해보면 답이 있습니다. 제가 작년에 올려둔 코드죠.

lib/common.lib.php에서

function sql_password($value)
{
    // mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes
    // mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes

    // mysql 4.1x 이상 버젼에서도 password() 함수의 결과가 16bytes가 되어서
    // 41바이트의 기존 비밀번호 때문에 로그인 오류가 나는 경우에는 아래 코멘트를 풀어주세요
    // 마루호스팅에서 테스트 했습니다.
    sql_query("set old_passwords=0");

    $row = sql_fetch(" select password('$value') as pass ");
    return $row[pass];
}



오래된 게시글이지만 초보인 제가 이것 저것 하다가 해결한 방법도 적어봅니다.
저는 예전 DB와 지금의 DB를 함께 써야 해서 password가 2가지를 혼용해야 했습니다.
그래서

lib/common.lib.php에

function sql_password_old($value)
{
    $row = sql_fetch(" select old_password('$value') as pass ");
    return $row[pass];
}
를 추가해주고,

bbs/ login_check.php
에서
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {
    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");
}

if (!$mb[mb_id] || ((sql_password($mb_password) != $mb[mb_password]) and (sql_password_old($mb_password) != $mb[mb_password]))) {
    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");
}
로 수정했습니다.


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
127 Linux nmtui 맨하탄노숙자 2017.11.21 0
126 Linux xfs repair 맨하탄노숙자 2017.10.14 0
125 Linux RHEL7(CentOS7) 의 grub2 사용 해 보기 맨하탄노숙자 2017.07.26 3
124 Linux VMware ESXi SSD on RAID showing as non-ssd 맨하탄노숙자 2017.05.09 4
123 Windows Windows XP 의 윈도우에서 Visual Studio .net (2003) 설치시 옵션 맨하탄노숙자 2017.01.02 10
122 Windows 윈 10 인증 크랙 secret 맨하탄노숙자 2016.05.01 8
121 Windows 윈도우10 정품인증을 확실하게 받을 수 있는 방법입니다 맨하탄노숙자 2016.05.01 2495
120 Linux CentOS 7 CPU 퍼포먼스가 100% 안나올때 맨하탄노숙자 2016.03.25 161
119 Linux ## 아파치 설치용으로 CSR을 생성하고, 발급받은 VeriSign(베리사인) SSL 인증서를 Tomcat 8 에 적용 맨하탄노숙자 2016.03.22 214
» Linux mysql old_password 설정 맨하탄노숙자 2016.03.22 86
117 Windows 윈도우7 원격데스크톱 2인 이상 동시 접속 (다중 사용자 모드) 설정 방법 file 맨하탄노숙자 2016.03.21 363
116 Linux rsync 맨하탄노숙자 2016.03.21 58
115 Linux Rsync 특정 기간(일정 기간) 이상 지난 컨텐츠 복사 (730일, 365일, 1주일) 맨하탄노숙자 2016.03.10 53
114 Linux iptables 용어 맨하탄노숙자 2016.02.18 342
113 Linux iptables 용어 맨하탄노숙자 2016.02.18 340
112 Linux Linux iptables 방화벽 설정 맨하탄노숙자 2016.02.18 62
111 Linux Linux iptables 방화벽 설정 맨하탄노숙자 2016.02.18 186
110 Linux iptables 설정 두번째 맨하탄노숙자 2016.02.18 112
109 Linux iptables connlimit 모듈 활용 DDoS 맨하탄노숙자 2016.02.17 59
108 Linux iptables 분석 맨하탄노숙자 2016.02.17 23
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7