MySQL 서버에는 비밀번호 글자 조합을 강제하거나 금칙어를 설정하는 기능도 포함되어 있다.
validate_password 컴포넌트를 설치해야 한다.INSTALL COMPONENT 'file://component_validate_password;
check_user_namedictionary_file
lengthmixed_case_countnumber_countpolicy
LOW: 길이만 검증MEDIUM: 기본값, 길이와 대소문자 그리고 특수문자 배합을 검증STRONG: MEDIUM 레벨의 검증 + 금칙어 포함 여부 검증special_char_countvalidate_password.dictionary_file 시스템 변수에 금칙어들이 저장된 파일을 등록하면 된다.‘STRONG’으로 설정해야 적용된다.SET GLOBAL validate_password.dictionary_file='prohibitive_word.data';
SET GLOBAL validate_password.policy='STRONG';
old_password라는 비밀번호를 가진 데이터베이스 서버가 있고 애플리케이션이 이 비밀번호를 통해 서비스를 실행하고 있다.
RETAIN CURRENT PASSWORD 옵션을 추가하면 기존 비밀번호는 세컨더리가 되고 새 비밀번호는 프라이머리가 되어 이중 비밀번호가 설정된다.ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password' RETAIN CURRENT PASSWORD;
old_password로 접속하고 있던 애플리케이션의 DB 접근 설정 파일을 new_password로 바꾸고 재배포한다.
ALTER USER 'root'@'localhost' DISCARD OLD PASSWORD;