MySQL 및 MariaDB 설치 후, 외부 접속을 허용하는 설정에 대해 설명한다.

 

기본적으로 MySQL은 /etc/mysql/mysql.conf.d/mysqld.cnf에 해당 설정파일이 존재하며,

MariaDB는 /etc/mysql/mariadb.conf.d/50-server.cnf에 해당 설정파일이 존재한다.

 

 

 

다음과 같이 bind-address를 주석 처리한다.

 

 

 

그리고 MySQL 서비스를 재시작한다.

$ service mysql restart 


DB에 접속하여 MySQL Database를 지정하여 아래와 같이 user 테이블에 접근하여 SQL 쿼리를 보내면 Host가 localhost로만 지정되어 있는 것을 확인할 수 있다.

$ MariaDB> use mysql

 

 

 

 

 

 

User 컬럼에는 접속을 허용할 유저 ID와 Host에는 '%'값을 Insert한다.

MariaDB> INSERT INTO user (Host, User) VALUES ('%', 'root');

 

 

 

 

그리고 MySQL에 대한 모든 권한을 부여하고 싶다면 다음과 같이 SQL문 쿼리로 권한을 부여한다.

MariaDB> GRANT ALL PRIVILEGES ON *.* TO {'ID'}@'%' IDENTIFIED BY {'PASSWORD'};

   ex) GRANT ALL PRIVILEGES ON *.* TO 'programist'@'%' IDENTIFIED BY 'programist123';

 

 

만약 localhost도 MySQL에 대한 모든 권한을 부여하고 싶다면 다음과 같이 SQL문 쿼리로 권한을 부여한다.

MariaDB> GRANT ALL PRIVILEGES ON *.* TO {'ID'}@'localhost' IDENTIFIED BY {'PASSWORD'};

   ex) GRANT ALL PRIVILEGES ON *.* TO 'programist'@'localhost' IDENTIFIED BY 'programist123';

 

마지막으로 권한 설정 저장을 위해 다음과 같이 SQL 쿼리문을 입력한다.

MariaDB> FLUSH PRIVILEGES; 

 

 

+ Recent posts