root 계정 외부 접근 권한 확인
MySQL은 기본적으로 보안을 위해 root 계정은 localhost에서만 접근이 가능하고 외부에서는 접근이 불가능하도록 설정이 되어 있습니다. 접근 설정의 경우 다음과 같이 확인할 수 있는데, root 계정이 localhost에만 접근이 할당되어 있는것을 알 수 있습니다.
mysql> SELECT Host,User,authentication_string FROM mysql.user;
+-----------+---------------+-------------------------------------------+
| Host      | User          | authentication_string                     |
+-----------+---------------+-------------------------------------------+
| localhost | root          | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | mysql.sys     | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+-----------+---------------+-------------------------------------------+                
cs

 

 

 



root 계정 외부 접근 권한 부여
root 계정을 localhost 외부에서도 접근할 수 있도록 접근 설정을 할당합니다. 실제 운영 환경에서는 root 계정을 공개하는 것은 정책상 위험하니 따로 계정을 만들것을 권장합니다.
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED by '비밀번호';                        
cs

 



다시 접근 설정을 확인합니다.
mysql> SELECT Host,User,authentication_string FROM mysql.user;
+-----------+---------------+-------------------------------------------+
| Host      | User          | authentication_string                     |
+-----------+---------------+-------------------------------------------+
| localhost | root          | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | mysql.sys     | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| %         | root          | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | <-- 외부 접근 추가됨
+-----------+---------------+-------------------------------------------+
cs




root 계정 외부 접근 권한 취소
DELETE FROM mysql.user WHERE Host='%' AND User='root';                                    
FLUSH PRIVILEGES;
cs

블로그 이미지

도로락

IT, 프로그래밍, 컴퓨터 활용 정보 등을 위한 블로그

댓글을 달아 주세요! 질문 환영합니다!