본문 바로가기

Database/MySQL

[MySQL] 특정 IP 대역 개방하여 외부에서 MySQL 접속 / 사용자 권한

[해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다.
따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.]

 

특정 IP 대역 개방하여 외부에서 MySQL 접속

 

localhost가 아닌 외부에서 DB에 접근하기 위해선 권한을 줘야 한다. 특정 IP대역에서 접속이 필요한 경우 다음과 같은 명령어를 통해 권한을 주도록 하자.

 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'IP Address' IDENTIFIED BY '비밀번호';

 

굳이 모든 권한과 root 계정을 부여할 필요는 없다. 필요 권한을 제한하고자 할 땐 Grant ~ to 명령어를 통해 권한을 축소시켜 부여할 수 있다.

 

사용자 권한

Grant 명령어의 기본 문법은 다음과 같다.

 

GRANT 권한 ON 데이터베이스.테이블 TO 'MySQL 아이디'@'IP 호스트' IDENTIFIED BY '패스워드';

 

주로 DBA와 Database 일반 사용유저로 나누어 권한을 줄 필요가 있다.

 

DBA

  • ALL

Database User

  • CREATE
  • DELETE
  • ALTER
  • DROP
  • INDEX
  • SELECT
  • INSERT
  • UPDATE
  • DELETE

권한이 정상적으로 부여가 됐는지 확인하기 위해선 다음의 명령어를 통해 확인할 수 있다.

 

SHOW GRANTS FOR 계정;

 

 

사용자의 권한을 제거하는 기본 문법은 다음과 같다.

REVOKE 권한 ON 데이터베이스.테이블 FROM 사용자;

 

참고
https://wayhome25.github.io/mysql/2017/03/23/mysql-11-user-setting/