강좌
클라우드/리눅스에 관한 강좌입니다.
데이터베이스 분류

MySQL강좌7편:MYSQL설치 직후에 MYSQL root패스워드설정하기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

MySQL강좌7:MYSQL설치 직후에 MYSQL root패스워드설정하기

 

MYSQL에서 root사용자나 일반사용자의 패스워드를 변경하는 작업은 서버관리자의 주된 업무 가운데 하나이다. 이번 절에서는 MYSQL 사용자의 패스워드를 설정 또는 재설정하는 방법에 대해서 알아보도록 하겠다.

 

먼저, MYSQL mysqladmin유틸리티를 이용하면 MYSQL root계정의 패스워드뿐아니라 일반사용자의 패스워드까지도 변경할 수 있다.  MYSQL 사용자 계정의 패스워드를 변경하는 가장 보편적이고 일반적인 방법은 MYSQL에 접속하여 update문을 이용하는 것이다.  하지만 서버관리자의 입장에서는 MYSQL에 접속하지 않고 리눅스 쉘상태에서 간단히 변경하는 방법이 필요할 것이다. 이와같이 MYSQL root뿐 아니라 일반사용자의 패스워드 변경요청에 편리하게 사용할 수 있다.

 

MYSQL mysqladmin유틸리티를 이용하여 MYSQL사용자의 패스워드를 변경하는 사용형식은 다음과 같다.

 

사용형식 : mysqladmin -u 계정명 -p password 변경할패스워드

 

MYSQL계정의 패스워드를 변경하는 첫번째 예로서 설치 직후의 MYSQL root패스워드를 설정하는 방법을 보겠다. MYSQL을 설치하신 직후에는 MYSQL root패스워드가 존재하지 않는다. 이때 mysqladmin유틸리티를 이용하여 간단히 MYSQL root패스워드를 설정할 수 있다. 즉 다음은 MYSQL을 설치한 직후에 MYSQL root패스워드가 설정되어있지 않은 상황에서 새로 root패스워드를 설정하는 예이다. 이 경우 MYSQL root패스워드가 존재하지 않기 때문에 -p옵션을 사용하면 안된다.

 

[root@sulinux ~]#/usr/local/mysql/bin/mysqladmin -u root password 12345678

Enter password: ********

[root@sulinux ~]#

 

위의 결과로 MYSQL root패스워드는 12345678로 설정되었다. 이후부터 MYSQL root로 접속하려면 반드시 -p옵션을 사용해야하고 방금 설정한 패스워드를 입력해야 한다.

 

 

기존에 사용하던 MYSQL root패스워드를 다른 것으로 변경하기

 

이번에는 이미 설정되어있는 MYSQL root패스워드를 다른 것으로 변경하는 방법이다. 이때에는 이미 MYSQL root계정에 패스워드가 설정되어 있으므로 -p옵션을 사용해야 한다.  그리고 패스워드를 변경하려면 사용중이던 패스워드를 “Enter password : ”란에 입력해 주셔야만 새로운 패스워드로 변경된다.

 

아래의 예는 MYSQL root계정의 새로운 패스워드를 12345678로 설정하는 예이다.  말한 바와같이 “Enter password : ”에는 이미 사용중이던 기존의 패스워드를 입력해야만 12345678이라는 새로운 패스워드로 변경된다.

 

[root@sulinux ~]#/usr/local/mysql/bin/mysqladmin -u root -p password 12345678

Enter password: ********

[root@sulinux ~]#

 

잘 알겠지만 위와같이 변경이 된 후에 MYSQL root 12345678라는 패스워드를 사용해야한다.  참고로 새로 변경된 패스워드를 이용하여 MYSQL로 접속한 예를 들었다. 즉 아래와 같이 MYSQL root로 접속할 때에는 새로 바뀐 12345678이라는 패스워드를 입력해야만 정상적으로 접속된다.

 

[root@sulinux ~]#/usr/local/mysql/bin/mysql -u root -p mysql

Enter password: ********

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 8

Server version: 5.1.32 Source distribution

 

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

 

mysql>

mysql> exit

Bye

[root@sulinux ~]#

 

또한 mysqladmin을 사용할 때에도 변경된 패스워드가 그대로 적용된다는 점도 기억하기 바란다.

 

참고로 MYSQL에서 MYSQL root나 일반사용자의 패스워드를 변경하는 다른 방법을 소개하겠다. 먼저 MYSQL에 접속한 다음 update라는 SQL문을 이용한 예이다. update문을 이용하여 MYSQL의 관리데이터베이스인 mysql데이터베이스의 user라는 테이블에 있는 root 사용자 패스워드를 변경한 것이다.

 

[root@sulinux ~]#/usr/local/mysql/bin/mysql -u root -p mysql

Enter password: ********

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 14

Server version: 5.1.32 Source distribution

 

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

 

mysql>

mysql> update user set password=password('11111111') where user='root';

Query OK, 2 rows affected (0.00 sec)

Rows matched: 3  Changed: 2  Warnings: 0

 

mysql>

 

이렇게 패스워드를 수정한 후에는 "flush privileges" 또는 "mysqladmin -u root -p reload"를 실행하여 수정된 패스워드가 MYSQL 권한테이블에 적용되도록 해야한다. 이상의 설명으로 MYSQL에서 root나 일반사용자의 패스워드를 변경하는 방법을 모두 설명하였다.

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  101 명