Computer >> 컴퓨터 >  >> 스마트폰 >> Linux

잃어버린 MySQL 루트 비밀번호를 재설정하는 방법

이 짧지만 자세한 가이드는 Windows 또는 Linux를 사용하여 분실하거나 잊어버린 MySQL 루트 비밀번호를 재설정하는 방법을 설명합니다.

배경

MySQL 루트 비밀번호를 잊어버린 적이 있습니까? 취할 수 있는 수많은 예방 조치에도 불구하고 발생하는 일 중 하나입니다. 결과적으로 데이터베이스 서버가 잠겨 있습니다. 새 데이터베이스를 만들 수 없으며 데이터베이스 서버의 상태를 거의 제어할 수 없습니다. 이러한 상황에서 데이터베이스 서버에 대한 루트 액세스 권한을 다시 얻는 방법을 아는 것이 유용합니다. Windows와 Linux 모두에서 MySQL의 루트 사용자에 대한 비밀번호를 재설정하기 위해 할 수 있는 일은 다음과 같습니다.

Windows에서 MySQL 루트 비밀번호 재설정

서버에 관리자로 로그온합니다. 실행 중인 경우 MySQL 서버를 종료합니다. 이렇게 하려면 Windows 서비스 관리자가 필요합니다. , 시작 메뉴를 클릭합니다. 을 클릭한 다음 제어판으로 이동합니다. , 관리 도구 , 서비스를 선택합니다. . 여기에서 MySQL 서버를 찾아 중지합니다. 목록에 없고 MySQL이 실행될 때까지 실행 중인 경우 MySQL이 서비스로 실행되고 있지 않음을 의미합니다. 이 경우 Ctrl+Alt+Del 키 조합을 사용하여 액세스할 수 있어야 하는 작업 관리자를 로드해야 합니다. . 이제 MySQL 프로세스를 종료합니다.

MySQL 프로세스가 중지되면 UPDATE 조합을 사용하여 MySQL에서 비밀번호를 강제로 변경해야 합니다. 및 플러시 옵션. 좋아하는 텍스트 편집기를 실행하고 새 파일을 만드십시오. "NewMySQLPassword"를 새 비밀번호로 바꿔 다음 텍스트를 파일에 입력하십시오.

<블록 인용>

업데이트 mysql.user SET Password=PASSWORD("NewMySQLPassword") WHERE 사용자='루트'; 플러시 특권;

첫 번째 행은 사용자 "root"에 대한 mysql.user 테이블의 "Password" 필드 값을 "NewMySQLPassword"로 업데이트합니다. 두 번째 줄은 이전 권한 집합을 플러시하고 새 암호가 모든 곳에서 사용되는지 확인합니다. 이 텍스트를 C:\mysql_reset.txt로 저장합니다. .

다음으로 이 파일을 구성 매개변수로 전달하여 MySQL 서버를 시작해야 합니다. 시작 메뉴로 이동하여 터미널을 실행합니다. , 실행하려면 를 누른 다음 cmd를 입력합니다. Enter 키를 누릅니다. 이제 다음 명령을 입력하십시오.

<블록 인용>

C:\mysql\bin\mysqld-nt --init-file=C:\mysql_reset.txt

서버 시작이 완료되면 C:\mysql_reset.txt 파일을 삭제합니다. . 이제 MySQL 루트 비밀번호를 재설정해야 합니다. 이제 MySQL 서버를 다시 시작하십시오. 그렇게 하려면 Windows 서비스 관리자로 다시 돌아가십시오. 이제 새 MySQL 루트 비밀번호가 작동합니다.

Linux에서 MySQL 루트 비밀번호 재설정

Linux 시스템에 루트 사용자로 로그온합니다. MySQL 루트 암호 재설정과 관련된 단계는 MySQL 서버를 중지하고 권한을 활성화하지 않고 다시 시작하여 암호 없이 루트로 MySQL에 로그인하고 새 암호를 설정한 다음 정상적으로 다시 시작하는 것입니다. 방법은 다음과 같습니다. 먼저 MySQL 서버를 중지합니다.

<#># /etc/init.d/mysql 중지

이제 --skip-grant-tables를 사용하여 MySQL 서버를 시작합니다. 권한 설정을 로드하지 않고 서버를 실행하는 옵션:

<블록 인용>

# mysqld_safe --skip-grant-tables &

& 마지막에 옵션은 실행한 명령을 백그라운드 프로세스로 실행합니다. 이제 MySQL 서버에 루트로 로그온하십시오.

<블록 인용>

# mysql -u 루트

암호를 묻지 않고 들어갈 수 있어야 합니다. 다음 단계에 따라 새 비밀번호가 설정됩니다.

<블록 인용>

mysql> mysql 사용;
mysql> 업데이트 사용자 비밀번호=PASSWORD(“NewMySQLPassword”) 여기서 User='root';
mysql> 권한 플러시,
mysql> 종료

"NewMySQLPassword"를 자신의 암호로 바꿉니다. 여기에서 일어나는 일입니다. 첫 번째 줄은 MySQL 구성 테이블을 선택합니다. 두 번째 줄은 사용자 "root"의 "Password" 필드 값을 "NewMySQLPassword"로 업데이트합니다. 세 번째 줄은 이전 권한 집합을 플러시하고 새 암호가 모든 곳에서 사용되는지 확인합니다. 이제 마지막 단계는 서버를 정상적으로 다시 시작하고 새 루트 암호를 사용하여 로그인하는 것입니다.

<블록 인용>

# /etc/init.d/mysql stop
# /etc/init.d/mysql start
# mysql -u root -pNewMySQLPassword

축하합니다. 새 MySQL 루트 비밀번호가 설정되었으며 MySQL 서버를 다시 사용할 준비가 되었습니다. 어디에서나 이 비밀번호를 사용하는 경우 이 비밀번호를 사용하도록 모든 애플리케이션을 업데이트하는 것을 잊지 마십시오.