WebApps의 MySQL In App 암호 만료 후 복구 방법
이유를 보려고 MySQL 로그를 봤어요.
ySQLINApp에서 로그를 보려면 Kudu 액세스
D:\home\LogFiles\mysql
를 사용하여 로그를 봅니다.그리고 이런 로그를 출력했습니다.
[Note] Your password has expired. To log in you must change it using a client that supports expired passwords.
비밀번호가 만료되었습니다!그래서 MySQL의 비밀번호가 유효기간이 있는지 몰랐지만 MySQL 5.7.4 에 추가된 것 같습니다.기본 설정은 유효기간이 365일로 1년 동안 실행되었습니다.
어쨌든 mysql에 로그인할 수 없는 것은 어쩔 수 없기 때문에 복구를 시도해 보았습니다.
암호 재설정
내 SQL 비밀번호가 만료되었기 때문에 나는 My SQL 비밀번호를 다른 것으로 바꾸려고 한다.
주의해야 할 것은 Kudo에서 mysql와 명령을 쳐도 경로가 통과되지 않기 때문에 mysql를 실행할 수 없습니다.
mysql의 실행 파일은 D:\Program Files (x86)\mysql\5.7.9.0\bin
에 있기 때문에 현재 디렉터리를 이동합니다.cd D:\Program Files (x86)\mysql\5.7.9.0\bin
그리고 - connect-expired-password를 사용하여 로그인합니다.
사용자 이름과 비밀번호는 같지만 포트 번호만 다르기 때문에 자신의 mysql 포트 번호를 넣어야 합니다.저는 wp-config입니다.php 봤어요../mysql -u azure --port={your mysql port} --password=password --connect-expired-password
이 때, Kudo에서 mysql에 로그인할 때의'>'같은 표시가 없을 수도 있지만, 어쩔 수 없이 아래의 문자열만 출력하고, 오류가 없으면 로그인에 성공했습니다.
Kudo 콘솔의 오류라고 생각하지만 명령을 내릴 때마다 다시 로그인해야 합니다.
다음 명령을 사용하여 암호를 tempcode
로 변경합니다.set password for 'azure'@'localhost' = password('tempcode');
이 비밀번호로 필터를 할 수 있지만 phpmyadmin은 비밀번호가 password
가 아니면 안 될 것 같아서 다시 패스워드로 변경했습니다../mysql -u azure --password=tempcode --port={your mysql port};
set password for 'azure'@'localhost' = password('password');
현재 비밀번호가 만료된 상태에서 복구가 완료되었습니다.
아마 phpmyadmin도 사용할 수 있을 거예요. 워드프레스도 접근할 수 있는 상태예요.
기한을 넘기다
하지만 이렇게 되면 1년 뒤에는 비밀번호를 다시 설정해야 하기 때문에 유효기간 설정을 취소해야 한다.
ySQL의 유효기간 설정은 default_password_lifetime
이라는 글로벌 변수에 의해 결정됩니다.
통상적으로 my.conf,my.ini를 변경하면 되지만 WebApps에서 MySQL 실행 파일 위치를 다시 쓸 수 있는 권한이 없기 때문에 명령으로 전역 변수를 변경하기로 결정했습니다.
다음 명령을 눌러 MySQL에 다시 로그인합니다.SET GLOBAL default_password_lifetime = 0;
암호의 라이프 사이클 0은 무제한으로 사용할 수 있습니다.
그런 다음 글로벌 변수가 변경되었는지 확인합니다.SHOW GLOBAL VARIABLES LIKE 'default_password_lifetime';
순조롭게 무기한 변경되었다.
끝내다
My SQL In App이 아직 미리보기 중이기 때문에 Kudo에서는 출력 등 다양한 상황을 보기 어렵다.
Reference
이 문제에 관하여(WebApps의 MySQL In App 암호 만료 후 복구 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/garicchi/items/822ec2a074f09e0451c5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
cd D:\Program Files (x86)\mysql\5.7.9.0\bin
./mysql -u azure --port={your mysql port} --password=password --connect-expired-password
set password for 'azure'@'localhost' = password('tempcode');
./mysql -u azure --password=tempcode --port={your mysql port};
set password for 'azure'@'localhost' = password('password');
하지만 이렇게 되면 1년 뒤에는 비밀번호를 다시 설정해야 하기 때문에 유효기간 설정을 취소해야 한다.
ySQL의 유효기간 설정은
default_password_lifetime
이라는 글로벌 변수에 의해 결정됩니다.통상적으로 my.conf,my.ini를 변경하면 되지만 WebApps에서 MySQL 실행 파일 위치를 다시 쓸 수 있는 권한이 없기 때문에 명령으로 전역 변수를 변경하기로 결정했습니다.
다음 명령을 눌러 MySQL에 다시 로그인합니다.
SET GLOBAL default_password_lifetime = 0;
암호의 라이프 사이클 0은 무제한으로 사용할 수 있습니다.그런 다음 글로벌 변수가 변경되었는지 확인합니다.
SHOW GLOBAL VARIABLES LIKE 'default_password_lifetime';
순조롭게 무기한 변경되었다.
끝내다
My SQL In App이 아직 미리보기 중이기 때문에 Kudo에서는 출력 등 다양한 상황을 보기 어렵다.
Reference
이 문제에 관하여(WebApps의 MySQL In App 암호 만료 후 복구 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/garicchi/items/822ec2a074f09e0451c5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(WebApps의 MySQL In App 암호 만료 후 복구 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/garicchi/items/822ec2a074f09e0451c5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)