본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

MySQL 사용자 fastapiuser가 외부 시스템(다른 PC 등)에서도 접속 가능

by easyfly 2025. 5. 11.
반응형

MySQL 사용자 fastapiuser가 외부 시스템(다른 PC 등)에서도 접속 가능하도록 하려면 아래와 같은 설정 절차를 따라야 합니다. 이 과정을 개조식으로 정리합니다

[목표]


사용자 fastapiuser가 외부에서 MySQL 서버(예: 192.168.230.128)에 접속할 수 있게 설정


1. MySQL에서 fastapiuser에 외부 접근 권한 부여


-- 현재 사용자 계정 확인
SELECT user, host FROM mysql.user;

-- 외부 모든 IP 허용 (보안상 제한 IP로 설정 권장)
CREATE USER 'fastapiuser'@'%' IDENTIFIED BY '비밀번호';

-- 필요한 권한 부여
GRANT ALL PRIVILEGES ON fastapiDB.* TO 'fastapiuser'@'%';

-- 권한 적용
FLUSH PRIVILEGES;

> ※ %는 모든 IP를 의미합니다. 특정 IP만 허용하려면 'fastapiuser'@'192.168.230.%'처럼 작성하세요.


2. MySQL 설정 파일 수정 (서버 측 작업)


파일 위치 예시:

Ubuntu: /etc/mysql/mysql.conf.d/mysqld.cnf

Rocky Linux: /etc/my.cnf 또는 /etc/my.cnf.d/mariadb-server.cnf


sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

수정 항목:

bind-address = 0.0.0.0

> 기존에는 127.0.0.1로 되어 있어서 로컬 접속만 허용됩니다. 0.0.0.0은 모든 IP에서 접속 허용입니다.


3. 방화벽 포트 개방 (Ubuntu 기준 예시)


sudo ufw allow 3306/tcp

또는 방화벽이 켜져 있지 않다면 아래로 확인:

sudo ufw status


4. MySQL 서비스 재시작


sudo systemctl restart mysql

또는

sudo service mysql restart


5. 외부 PC에서 접속 테스트


명령 예시:

mysql -u fastapiuser -p -h 192.168.230.128 -P 3306


보안 팁


%는 개발용으로만 사용하세요. 운영환경에서는 IP 제한 또는 VPN 설정을 권장합니다.

방화벽 외부에 열어둘 경우 접속 암호를 반드시 복잡하게 설정해야 합니다.



반응형

댓글