MySQL에 대한 루트 암호를 할당한 적이 없다면 서버는 루트로 연결하기 위해 암호를 전혀 요구하지 않습니다. 그러나 이것은 안전하지 않습니다. 비밀번호를 설정하는 것이 좋습니다.
루트 비밀번호를 처음 설정하려면 두 가지 방법이 있습니다.
-
mysql_secure_installation 명령을 사용합니다. 이 명령은 이전 MySQL 루트 비밀번호와 새 MySQL 루트 비밀번호를 모두 요청하고 테스트 데이터베이스 비활성화를 비롯한 몇 가지 다른 보안 설정도 수행합니다.
방법은 다음과 같습니다.
터미널을 시작하고 다음 명령을 입력하십시오:mysql_secure_installation
-
아래에 표시된 대로 질문에 답하십시오.
루트 비밀번호를 변경하시겠습니까? [예/n] <-- 예
새 비밀번호:<-- 새 MySQL 루트 비밀번호를 입력하세요.
새 비밀번호 재입력:<-- MySQL 루트 비밀번호 반복
익명 사용자를 제거하시겠습니까? [예/n] <-- 예
원격으로 루트 로그인을 허용하지 않습니까? [예/n] <-- 예
테스트 데이터베이스를 제거하고 액세스하시겠습니까? [예/n] <-- 예
지금 권한 테이블을 다시 로드하시겠습니까? [예/n] <-- 예
추신 이 오류의 가장 일반적인 이유는 빈 암호입니다. Mysql 데이터베이스에 연결하는 동안 루트 암호를 지정해야 합니다.
mysqladmin -u 루트 -pROOT-비밀번호.
2. 다음과 같이 쉘 프롬프트에서 mysqladmin 명령을 사용하십시오:
-
터미널을 열고 다음 명령을 입력합니다. mysqladmin -u root password newpass
-
비밀번호를 입력하세요.
다음이 표시되는 경우:
mysqladmin:'localhost'에서 서버에 연결하지 못했습니다.
오류:'사용자 'root'@'localhost'에 대한 액세스가 거부되었습니다(비밀번호 사용:YES)'
MySQL 비밀번호를 복구하는 방법은 아래 지침을 따라야 합니다.
그런데 위의 예에서 'password'라는 단어는 명령의 일부이므로 암호로 바꾸지 마십시오. 'newpass' 섹션에 새 비밀번호를 입력하세요.
오케이, Mac에 MySQL을 설치하고 루트 사용자 암호를 설정한 지 오래되었습니다. 일정 시간이 지나면 MySQL 루트 비밀번호를 쉽게 잊어버릴 수 있습니다. 그게 네 경우야, 그렇지? 걱정하지 마세요. MySQL 루트 암호를 잊어버렸거나 기억이 나지 않거나 침입하고 싶은 경우 현재 있는 상자의 루트 사용자 암호를 알고 있는 한 명령줄에서 MySQL 데이터베이스 암호를 쉽게 재설정할 수 있습니다.
MySQL 비밀번호 재설정은 어렵지 않지만 사용 중인 버전에 따라 다릅니다.
Mac에서 MySQL 비밀번호를 재설정하는 방법은 다음과 같습니다.
-
MySQL 서버를 중지합니다. 이렇게 하려면 시스템 환경설정으로 이동하여 MySQL을 선택해야 합니다. 그런 다음 MySQL 서버 중지를 선택합니다.
도움말: 그건 그렇고, 터미널을 사용하여 MySQL 서버를 중지할 수도 있습니다. 터미널에 다음 명령을 입력해야 합니다.
서비스 mysql 중지
다음과 같은 결과를 얻을 수 있습니다.
또는 MySQL 데이터베이스 서버 중지:mysqld.
2. 권한 우회를 사용하여 안전 모드에서 서버 시작:터미널에서 다음 명령을 입력합니다.
sudo /usr/local/mysql/bin/mysqld_safe –skip-grant-tables |
다음이 표시됩니다.
MySQL 클라이언트를 사용하여 MySQL 서버에 연결:새 터미널 창에서 다음 명령을 입력합니다(한 줄씩 입력해야 함).
mysql -u 루트
출력은 다음과 같습니다.
4. 새 MySQL 루트 사용자 비밀번호 설정:
다음 명령은 MySQL 버전에 따라 다릅니다.
-
MySQL 5.7.5 및 이전 버전의 경우
MySQL 5.7.6 이상
5. MySQL 서버 중지:다음 명령을 사용하여 MySQL을 중지합니다.
mysqld 킬올
마지막으로 MySQL 서버를 다시 시작하고 테스트합니다.
주요 고려사항
MySQL은 비밀번호 없이도 사용할 수 있지만 보안상의 이유로 루트 비밀번호를 설정하는 것이 좋습니다. 걱정하지 마십시오. 해당 암호를 잊어버린 경우 Mac에서 MySQL 루트 암호를 복구하는 것은 그리 어렵지 않습니다. 이 가이드를 사용하기만 하면 됩니다.