MySQL이 명령 줄과 로그에서 암호를 난독 화하지 않는다는 것이 여전히 마음에 듭니다. 그리고 이것이 @Gilles 답변에 댓글을 달기보다는 답변을 추가하는 유일한 이유입니다.
그래서, 물론, 당신은 할 수 단지 관리자로 MySQL에 로그인 @patrix 제안으로, 당신의 blayo 사용자에 대한 새 암호를 설정합니다.
그러나 일반적인 방법은 일반 텍스트 비밀번호를 인수로 사용하는 MySQL의 password () 함수를 사용하는 것입니다.
그렇게하면, MySQL 사용자 암호의 일반 텍스트 버전을 bash 기록과 MySQL 로그에 그대로 두어 나중에 해당 로그 파일에 액세스 할 수있는 사람이 쉽게 검색 할 수 있습니다.
암호를 화면이나 로그에 표시하지 않고 암호를 묻는 작은 유틸리티를 사용하여 MySQL 호환 해시를 제공하는 것이 낫지 않습니까?
따라서 @Gilles의 대답을 약간 수정하면 다음과 같이 Python을 사용하는 작은 쉘 스크립트는 어떻습니까? MySQL 데이터베이스에 대해 SQL 문을 실행하여 암호를 한 번에 설정하도록 쉽게 수정할 수 있습니다. 그러나 멀리 가지 않아도 결과 해시를 복사하여 SQL 문에 붙여 넣어 users 테이블을 업데이트하십시오.
#!/bin/bash
mysqlpwd=$(/usr/bin/python -c 'from hashlib import sha1; import getpass; print "*" + sha1(sha1(getpass.getpass("New MySQL Password:")).digest()).hexdigest()')
echo $mysqlpwd
blayo
없습니까? 그것은 올바른 문자를 찾기 위해 수조 개의 가능한 문자 조합을 실행하는 것보다 확실히 빠릅니다.