DataBase(이하, DB) 에는 여러 DB가 있습니다. 과거에는 관계형, 객체형 등 그 방식이나 종류가 다양하고 실제로 쓰이기도 했지만...
현재로선 구조화 질의 언어(=Structured Query Language, 이하 SQL) / 비-관계형 데이터베이스 (이하, NoSQL) 2가지로 크게 나뉘어 NoSQL의 경우, AI 등 다양한 영역에서 빅데이터를 다루는 곳에서 사용되고 있습니다.
오늘은 그 중 SQL, 그 안에서도 MySQL 계열 (InnoDB, MongoDB 등)에서 발생하는 오류 중 1가지 짧게 안내드리고자 타자를 두드립니다.
일단 개인서버를 구축하여, 각종 편의 기능 등을 만들어가고 있는데...
예를 들자면 이런 게시판 형태의 스케쥴러나 AI엔진 등 다양하게 활용 중에 있는데...
새로운 외주 요청 내용이... 서비스 자체를 새로 만들어야 하는 상황이라 기획부터 DB 셋팅 / 스키마 등 뭐 가릴 것 없이 다 쳐내야 하는 상황이라, 기능을 테스트할 수 있는 페이지가 필요한 상황입니다.
때문에 간편하게 PHP로 프로토타입을 제작하고 있는 상황으로 DB 셋팅은 편하게 phpMyAdmin 를 통해 진행 중이었습니다.
그러나, root로 계속해서 팔 수는 없는 법.
새로운 DB user를 추가해야한다.
그래서 편하게 생각했지 그냥 추가하자!
#1819 - Your password does not satisfy the current policy requirements
그런데 왠걸 오류가 나면서 user 생성이 안되자나? 랄까...?
이 오류는 비밀번호가 보안 규약을 어긋났다는 내용인데, 사실 크게 어렵지 않은 내용으로 SQL에서는 validate_password_policy 항목을 수정하여 해결할 수 있습니다.
phpMyAdmin 에서 이 내용은 환경설정에서 찾아볼 수 있고, 수정할 수 있습니다.
SQL에서도 'validate_password%' 로 찾 듯이 포함되는 단어에 'validate_password' 를 입력하여, 모든 항목을 보시면, 하단에 validate_password_policy 값을 확인할 수 있으며, 좌측 수정버튼을 눌러 LOW, MEDIUM, STRONG 값 중 1개를 넣으시면 됩니다.
그럼 MEDIUM 인데, 이런 오류가 나는가?
1. LOW인 경우, Length 만 지켜 주면 됩니다. 아무튼 패스워드는 최소 8자 이상은 되어야 합니다.
2. MEDIUM인 경우, Length는 물론 숫자, 대문자, 소문자, 특수문자가 모두 포함된 비밀번호를 사용해야 합니다.
3. STRONG인 경우, dictionary file 이란 것을 등록해서 사용하게 되는데요. 이 파일에 포함된 단어는 비밀번호로 사용할 수 없게 됩니다.
보안 설정에 따른 각 조건은 위와 같기 때문에 오류가 나지 않으려면, 숫자, 대문자, 소문자, 특수문자가 모두 포함된 비밀번호를 사용해야 한다는 것입니다.
그럼 여러분도 오류를 해결하실 수 있길 바라며, 항상 '왜' 그런 것인지 아시면서 사용하시길 바랍니다!
그럼 어쩔 수 없이 shell 을 이용하여 수정하시기 바랍니다.
'개발새발 박스 > MySQL' 카테고리의 다른 글
MySQL password() 함수가 안된다! (0) | 2023.04.12 |
---|