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)하여
위의 암호 입력상자에 붙이기를 하면 됩니다.

img024_phpMyAdmin2.11.5.gif

이렇게 생성시킨 암호는 외우기 어려우므로 텍스트 파일로 작성하여 적당한 곳에 저장시켜 두었다가
필요할 때 복사하여 사용하시면 좋을 것 입니다.


6) 아래 왼쪽 그림처럼 암호가 바뀌었다는 메시지가 표시되면, 아래 오른쪽 그림과 같이 [시작 페이지] 아이콘을 클릭합니다.

           


7) 오른쪽 그림과 같은 오류 메시지가
보일 수도 있는데,

이 메시지가 보이는 이유는
앞에서 MySQL의 비밀번호를 변경시켰기
때문에 MySQL의 암호와 설정 파일
config.default.php에 설정된 암호가 서로 틀려서 오류 메시지가 보여지는 것 입니다.

다음의 메시지가 그 이유를 말해주고 있습니다. 그러나, 변경된 MySQL의 암호로 설정 파일의 내용을 아래의 수정
방법대로 한 곳만 수정해 주면 정상적으로 보여지게 됩니다.

    

설정 파일을 수정해 주기 위해서 C:\APM_Setup\Server\phpMyAdmin\libraries 디렉터리에 있는
config.default.php 파일을 메모장이나 텍스트 에디터로 불러옵니다.

144행 정도에 있는 $cfg['Servers'][$i]['controlpass'] 구문을 찾아 다음과 같이 수정하고 저장합니다.
     $cfg['Servers'][$i]['controlpass'] = '5)에서 변경한 암호';
     예) 만약 새로 변경한 암호가 xyz321이라면 $cfg['Servers'][$i]['controlpass'] = 'xyz321';로 수정해야 되겠지요?


8) 로그인 상자에 MySQL root 계정의 변경시킨 암호를 입력하고 [실행] 버튼을 클릭하여 정상적인 로그인이 되는지 확인합니다.
에러 메시지가 없이 로그인이 되면 MySQL의 root 계정의 암호가 잘 변경되었음을 나타냅니다.

    




SQL 명령으로 MySQL root 계정 비밀번호 변경하기

1) [시작]→[실행]→입력상자에 cmd라 입력하고 [확인]을 클릭하여 명령프롬프트(cmd) 창을 엽니다.

2) 아래와 같이 cd 명령을 이용하여 mysql의 bin 폴더로 현재의 디렉터리를 변경시킵니다.

>cd \APM_Setup\Server\MySQL5\bin

3) 아래와 같은 명령으로 MySQL에 root 계정으로 현재의 비밀번호를 입력하여 접속합니다.

>mysql -u root -p
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 명령의 끝이라는 의미인 세미콜론 ";"을 명령 마지막에 입력하는 것 잊지 마십시오.)
mysqlSET PASSWORD FOR 'root'@'localhost' = PASSWORD('xyz321');

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



'DB > MySQL' 카테고리의 다른 글

mysql - 이벤트(Event)  (0) 2012.09.07
mysql - 날짜 함수 및 날짜 변환  (0) 2012.09.03
mysql - 리플리케이션(replication)  (0) 2012.09.01
mysql - flush 문  (0) 2012.09.01
mysql - ORDER BY 여러가지 정렬 방법  (0) 2012.08.29
Posted by linuxism
,