MySQL Workbench ( mysql GUI 툴 이용하여 외부 접속 허용하기 )

2016. 3. 11. 14:59DB

1. 테스트 환경

   OS : CentOS 

   MySQL version : 5.1


2. 테스트 사항

    특정 사용자 계정의 외부접속 허용하기 

    테스트 계정 : dymoon

    사용하는 GUI 툴 : MySQL Workbench

  


########################### 테스트 ###############################

1. MySQL에 생성되어 있는 DB확인. 

   - 우리가 사용하게 될 DB는 mysql 이다. 이곳에 계정관련한 테이블이 있다.

mysql> show databases;

+--------------------+

| Database                 |

+--------------------+

| information_schema     |

| mysql                    |

| test                      |

+--------------------+



2. DB 선택.

mysql> use mysql

Database changed


3. 테이블 조회.

  - "user" 테이블을 확인 할 수 있다.

  - "user" 테이블이 mysql DB 사용자에 대한 정보를 가지고 있다.

mysql> show tables;

+---------------------------+

| Tables_in_mysql           |

+---------------------------+

| columns_priv              |

| db                        |

| event                     |

| func                      |

| general_log               |

| help_category             |

| help_keyword              |

| help_relation             |

| help_topic                |

| host                      |

| ndb_binlog_index          |

| plugin                    |

| proc                      |

| procs_priv                |

| servers                   |

| slow_log                  |

| tables_priv               |

| time_zone                 |

| time_zone_leap_second     |

| time_zone_name            |

| time_zone_transition      |

| time_zone_transition_type |

| user                      |

+---------------------------+

23 rows in set (0.00 sec)


4. "user" 테이블 데이터 조회.

 - host , user , password 정보만 조회.

mysql> select host,user,password from user;

+-----------+---------+-------------------------------------------+

| host      | user    | password                                                     |

+-----------+---------+-------------------------------------------+

| localhost | root    |                                                                 |

| pop       | root    |                                                                 |

| 127.0.0.1 | root    |                                                                |

| localhost |         |                                                                  |

| pop       |         |                                                                  |

| %         | popuser |                                                                 |

| localhost | popuser |                                                                 |

| localhost | dymoon  | *81CBBB6187A7F80F4C34197AEB9D7DF6F71457DC |

+-----------+---------+-------------------------------------------+

8 rows in set (0.00 sec)


 - host 명이 접속 가능한 PC를 의미하는데 

   "dymoon" 계정의 정보를 보면 localhost 즉 mysql DB가 설치되어 있는 리눅스서버에서만 접속 가능하도록 되어 있다.

 

  그래서, 개인 PC에서 MySQL Workbench 로 접속할 수 가 없는 것이다.


5. 외부에서 접속 가능하도록 설정 추가.

  - 비밀번호를 설정하지 않았다.

  - 비밀번호를 설정할 경우 query : mysql> grant all privileges on *.* to 'dymoon'@'%' identified by 'dymoon의 패스워드';

 mysql> grant all privileges on *.* to 'dymoon'@'%';

Query OK, 0 rows affected (0.00 sec)


6. 등록 확인.

 - "dymoon" 계정의 host 필드에 %가 등록되었는지 확인.

mysql> select host,user,password from user;

+-----------+---------+-------------------------------------------+

| host      | user    | password                                  |

+-----------+---------+-------------------------------------------+

| localhost | root    |                                           |

| pac       | root    |                                           |

| 127.0.0.1 | root    |                                           |

| localhost |         |                                           |

| pac       |         |                                           |

| %         | pacuser |                                           |

| localhost | pacuser |                                           |

| %         | dymoon  | *81CBBB6187A7F80F4C34197AEB9D7DF6F71457DC |

| localhost | dymoon  | *81CBBB6187A7F80F4C34197AEB9D7DF6F71457DC |

 +-----------+---------+-------------------------------------------+

9 rows in set (0.00 sec)


7. refresh

mysql> flush privileges; 


8. 확인.

 - MySQL Workbench 실행하여 접속이 정상적으로 되는지 확인하고 끝.


'DB' 카테고리의 다른 글

1. 기본 개념  (0) 2016.03.11