반응형
MySQL 서버와 클라이언트
MySQL 서버와 클라이언트의 관계를 이해하는 것은 웹사이트 운영과 데이터베이스 관리에서 대단히 중요합니다. 특히 클라우드 서버에 웹사이트를 구축하고 운영하는 경우 어떤 경우에도 데이터베이스를 연동하여 관리하는 역량이 필요합니다.

✅ 1. MySQL 서버 (MySQL Server)
📌 개념
MySQL 서버는 데이터를 저장·관리·제공하는 핵심 엔진입니다.
클라이언트의 요청을 받아 SQL을 처리하고, 결과를 응답합니다.
📋 주요 기능
- 데이터베이스 생성 및 삭제
- 테이블 생성, 수정, 삭제
- 데이터 삽입, 조회, 수정, 삭제 (CRUD)
- 사용자 및 권한 관리
- 트랜잭션 처리
🔒 실행 방식
MySQL 서버는 mysqld라는 백그라운드 데몬 형태로 동작합니다.
🎯 예시 명령 (서버 설치 후)
sudo systemctl start mysqld
sudo systemctl enable mysqld
sudo mysql_secure_installation
✅ 2. MySQL 클라이언트 (MySQL Client)
📌 개념
MySQL 클라이언트는 MySQL 서버에 접속하여 SQL 명령을 전달하고 결과를 확인하는 도구입니다.
CLI(Command Line Interface) 기반의 프로그램으로, 로컬 또는 원격의 MySQL 서버에 접속합니다.
🛠 주 용도
- SQL 쿼리 작성 및 실행
- 데이터 확인 및 테스트
- 사용자 및 권한 설정
- 백업/복원 작업
🖥 실행 예시
mysql -u root -p # 로컬 서버 접속
mysql -h 192.168.1.100 -u user -p # 원격 서버 접속
📝 주의
클라이언트만 설치된 경우엔 서버가 따로 필요합니다. (예: AWS RDS, 다른 EC2 인스턴스 등)
✅ 비교 정리
| 구분 | MySQL 서버 | MySQL 클라이언트 |
| 역할 | 데이터 저장, 처리, 응답 | 서버에 명령 전달, 결과 확인 |
| 실행 파일 | mysqld | mysql |
| 설치 목적 | 서버를 직접 운영할 때 | 서버에 접속할 때 (운영은 하지 않음) |
| 설치 용량 | 상대적으로 큼 | 가벼움 |
| 설치 예 | mysql-server | mysql-client, mysql |
✅ 예시 상황
| 사용 목적 | 필요한 구성 |
| Flask 웹앱에서 로컬 DB 사용 | 서버 + 클라이언트 모두 |
| 외부 RDS에 접속해서 테스트 | 클라이언트만 |
| DB 서버를 따로 두고 여러 앱에서 연결 | DB 서버에 MySQL 서버, 각 앱 서버엔 클라이언트만 |
반응형
'컴퓨터 활용 > 노년에 즐기는 코딩' 카테고리의 다른 글
| ASGI, 비동기 Python 웹 프레임워크 (11) | 2025.06.07 |
|---|---|
| [SQL] SQL이란? (11) | 2025.06.06 |
| AWS CLI (Command Line Interface) (4) | 2025.06.03 |
| 웹 관리자를 특정 유저에게 맡기려면 (4) | 2025.06.01 |
| Git Bash에서 공개된 리포지터리 복제 과정 (0) | 2025.05.31 |
댓글