mysql - 사용자 패스워드 변경하기
MySQL root 계정 비밀번호 바꾸기
MySQL root 계정은 MySQL Server에 대한 최고 관리자 계정으로서, DB에 대한 모든 권리를 갖고있는 계정입니다.
그렇기 때문에 root 계정의 비밀번호는 보안상 대단히 중요하므로 그 비밀번호를 어렵게 만들어야 하며,
주기적으로 변경시켜 주는 등 잘 관리해야 합니다.
MySQL root 계정 비밀번호를 변경시키는 방법은 두 가지가 있습니다.
phpMyAdmin을 이용해서 MySQL root 계정 비밀번호를 변경시키는 방법과
명령프롬프트(cmd) 창에서 MySQL Server에 root 계정으로 로그인한 후 SQL 명령을 이용하는 방법이 있습니다.
MySQL root 계정 비밀번호를 변경시켜야 될 경우 당연히 phpMyAdmin을 이용해서 변경시키는 방법을 권장합니다.
여기에서는 이 두 가지 방법을 모두 소개하기로 하겠습니다.
phpMyAdmin으로 MySQL root 계정 비밀번호 변경하기
1) 웹 브라우저를 열고 주소 입력상자에 다음과 같이 입력하여 phpMyAdmin 페이지를 엽니다.
'http://localhost/myadmin/' 또는 'http://도메인/myadmin/'
예) 'http://comstudy.dnip.net/myadmin/'
2) phpMyAdmin 페이지가 열리면
MySQL의 root 계정 암호를 입력하고 [실행] 버튼을 클릭합니다.
3) 로그인이 되어 오른쪽 그림과 같은 페이지가 보이게 되면
[사용권한]을 클릭합니다.
4) 사용자 개요 페이지가 보이게 됩니다.
아래의 그림처럼 사용자 중 root를 찾아 그 오른쪽 끝에 있는 그림 아이콘(권한 수정)을 클릭합니다.
5) 사용자 'root'@'localhost' : 권한 수정 페이지가 보이게 됩니다.
스크롤 바를 이용하여 아래로 내려가서 [암호 변경]을 찾아 아래의 그림처럼 변경할 암호를 두 번 입력하고
[실행]을 클릭합니다.
위의 암호는 다음의 방법으로 생성해서 입력하시길 권해 드립니다.
현재의 phpMyAdmin 화면에서 위의 암호 변경 바로 아래에 [로그인 정보]라는 상자가 있는데
그 상자 안에 Generate Password 라는 항목에 있는 [Generate] 버튼을 클릭하여 비밀번호를 생성시키고,
[Copy] 버튼을 누르지 말고 입력상자 안에 생성된 암호를 모두 드래그하여 선택한 다음 복사(Ctrl+C)하여
위의 암호 입력상자에 붙이기를 하면 됩니다.

이렇게 생성시킨 암호는 외우기 어려우므로 텍스트 파일로 작성하여 적당한 곳에 저장시켜 두었다가
필요할 때 복사하여 사용하시면 좋을 것 입니다.
6) 아래 왼쪽 그림처럼 암호가 바뀌었다는 메시지가 표시되면, 아래 오른쪽 그림과 같이 [시작 페이지] 아이콘을 클릭합니다.



보일 수도 있는데,
이 메시지가 보이는 이유는
앞에서 MySQL의 비밀번호를 변경시켰기
때문에 MySQL의 암호와 설정 파일
config.default.php에 설정된 암호가 서로 틀려서 오류 메시지가 보여지는 것 입니다.
다음의 메시지가 그 이유를 말해주고 있습니다. 그러나, 변경된 MySQL의 암호로 설정 파일의 내용을 아래의 수정
방법대로 한 곳만 수정해 주면 정상적으로 보여지게 됩니다.

설정 파일을 수정해 주기 위해서 C:\APM_Setup\Server\phpMyAdmin\libraries 디렉터리에 있는
config.default.php 파일을 메모장이나 텍스트 에디터로 불러옵니다.
144행 정도에 있는 $cfg['Servers'][$i]['controlpass'] 구문을 찾아 다음과 같이 수정하고 저장합니다.
예) 만약 새로 변경한 암호가 xyz321이라면 $cfg['Servers'][$i]['controlpass'] = 'xyz321';로 수정해야 되겠지요?
8) 로그인 상자에 MySQL root 계정의 변경시킨 암호를 입력하고 [실행] 버튼을 클릭하여 정상적인 로그인이 되는지 확인합니다.
에러 메시지가 없이 로그인이 되면 MySQL의 root 계정의 암호가 잘 변경되었음을 나타냅니다.

SQL 명령으로 MySQL root 계정 비밀번호 변경하기
1) [시작]→[실행]→입력상자에 cmd라 입력하고 [확인]을 클릭하여 명령프롬프트(cmd) 창을 엽니다.
2) 아래와 같이 cd 명령을 이용하여 mysql의 bin 폴더로 현재의 디렉터리를 변경시킵니다.
3) 아래와 같은 명령으로 MySQL에 root 계정으로 현재의 비밀번호를 입력하여 접속합니다.
Enter password: ***********[Enter]
4) 환영 메시지가 보이면서 "mysql >"이라는 프롬프트가 보이면 정상적으로 로그인이 잘 된 상태입니다.
비밀번호를 변경시키는 SQL 명령 형식은 다음과 같습니다.
SQL 명령 형식 : SET PASSWORD FOR 'root'@'localhost' = PASSWORD('변경할 비밀번호');
예) 비밀번호를 xyz321로 변경시킨다면 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('xyz321');
명령 형식을 참고하여 아래와 같이 입력한 다음 [Enter] 키를 치면 곧 바로 MySQL root 계정의 비밀번호가
수정됩니다.(MySQL 명령의 끝이라는 의미인 세미콜론 ";"을 명령 마지막에 입력하는 것 잊지 마십시오.)
mysql> exit
다음 그림은 위의 과정을 캡쳐한 이미지입니다.

5) 다음은 phpMyAdmin으로 비밀번호 변경하는 방법에서의 7)과 같은 방법으로
C:\APM_Setup\Server\phpMyAdmin\libraries 디렉터리에 있는 설정 파일 config.default.php를
메모장이나 텍스트 에디터로 불러와 $cfg['Servers'][$i]['controlpass'] = '암호'; 구문을 찾아
변경시킨 암호로 수정한 다음 저장합니다.
위와 같은 경우일 경우 $cfg['Servers'][$i]['controlpass'] ='xyz321';로 수정해 주면 되겠지요?
6) 웹 브라우저에서 phpMyAdmin 페이지를 열고 변경시킨 root 계정의 암호를 입력하여 로그인해 봅니다.
mysqladmin.exe로 MySQL root 계정 비밀번호 변경하기
MySQL root 계정의 암호를 변경하는 방법으로 한 가지가 더 있습니다. 바로 mysqladmin.exe를 이용하는 방법인데,
이 방법은 Windows XP에 웹 서버 구축하기에서 이미 설명을 드린 내용입니다.
설치된 MySQL의 bin 디렉터리에 mysqladmin.exe가 있습니다.
cmd 창에서 이 프로그램을 이용하여 MySQL root 계정의 암호를 변경할 수 있습니다.
지금까지 MySQL의 root 계정 암호를 변경시키는 방법들에 대해서 살펴 보았습니다.
cmd 창에서 암호를 변경하는 방법은 모든 명령들을 직접 입력해야 하므로 실수할 확률이 높습니다.
특히 서버를 처음으로 구축하시는 분들은 더 그렇습니다.
제가 겪어본 경험으로 보았을 때 실제로 10분 중 1분 정도는 실수를 하시더군요.
그렇기 때문에 phpMyAdmin을 이용해서 MySQL root 계정의 암호를 변경하시라고 권장해 드리는 것 입니다.
조금이라도 도움이 되었기를 바랍니다.
출처 - http://jobdahan.net/server_window/652243