클라이언트 프로그램과 서버 프로그램 구조
- Client Program (sqlplus, sql developer)
→ 우리가 사용하는 SQL 입력 도구입니다. 명령어(SQL)를 입력하고 결과를 확인할 수 있습니다.- ex: SQL Developer, SQL*Plus 등
- Server Program (Oracle DB 엔진)
→ 진짜 데이터를 가지고 있는 DB 서버입니다. 사용자가 요청한 SQL 명령을 실행하고 결과를 돌려줍니다. - 사용자가 SQL Developer 등을 실행하면 다음 순서로 오라클 서버와 통신합니다:
- 인증 (ID/PW를 통해 Oracle DB 로그인)
- SQL 실행 요청
- 결과 반환 및 확인
- 중간에 접속이 차단될 수도 있는데, 이는 DB 서버가 꺼져 있거나, 방화벽/네트워크 오류, 잘못된 계정정보 때문입니다.
SQL Developer와 SQL*Plus의 역할
우리가 사용하는 SQL Developer나 SQL*Plus는 데이터베이스에 접속해서 SQL문을 입력하고 실행하는 도구입니다. 이 도구들은 모두 클라이언트 프로그램이라고 부릅니다.
- 클라이언트 프로그램: 사용자가 명령을 입력하고 결과를 확인하는 도구
- 서버 프로그램: 진짜로 데이터베이스를 실행시키고 데이터를 관리하는 Oracle DB 서버
접속 흐름 (3단계)
클라이언트 프로그램이 Oracle 데이터베이스와 통신할 때는 다음 3단계 절차를 따릅니다:
① 인증 (Connection / Login)
- Oracle DB에 접속하려면 사용자 이름(ID)과 비밀번호를 입력해야 합니다.
- 예: sys as sysdba, scott/tiger 같은 계정으로 로그인
② SQL 실행
- 로그인에 성공하면 SQL문을 입력합니다.
- 예: SELECT * FROM EMP; 와 같은 쿼리를 입력
③ 결과 확인
- Oracle 서버가 쿼리를 처리한 뒤, 결과를 다시 클라이언트로 보내줍니다.
- SQL Developer나 SQL*Plus는 이 결과를 사용자에게 보여줍니다.
SQL*Plus를 사용한 접속 예시 (명령줄 기반)
- Windows CMD 창에서 sqlplus 명령어로 SQL*Plus를 실행한 모습입니다.
- sys as sysdba로 접속 → 시스템 관리자 권한으로 접속한 상태
- 정상적으로 DB에 접속된 경우 SQL> 프롬프트가 출력됨.
이 경우에도 위 3단계: 인증 → SQL 실행 → 결과 확인 흐름이 적용됩니다. 단, CLI 기반이라 직접 명령어를 입력해야 합니다.
SQL Developer의 예 (GUI 기반)
- 프로그램을 실행하면 화면에 ID/PW 입력창이 뜨고, 접속 버튼을 누릅니다.
- 성공하면 SQL 창이 뜨고, 거기에 다음처럼 SQL문을 입력합니다:
SELECT * FROM EMP;
- 마우스로 실행 버튼을 누르면, 결과가 표 형태로 깔끔하게 나타납니다.
- 장점: GUI 기반으로 초보자에게 친절함, 결과가 보기 쉽고, 자동완성 기능 지원
정리
SQL*Plus | 명령어 기반 도구 | 가볍고 빠름, CLI 방식 |
SQL Developer | GUI 기반 도구 | 사용하기 쉬움, 설치 필요 |
공통 | Oracle 서버에 접속하여 SQL 실행 | 1. 인증 → 2. 실행 → 3. 결과확인 |
추가로 이해하면 좋은 내용
- SQL Developer는 내부적으로 Java 기반으로 실행됩니다. 그래서 JDK가 필요하며, JDK 경로가 없으면 아예 실행이 되지 않습니다.
- SQL Developer를 통해 접속하든, SQL*Plus를 통해 접속하든, 결국 Oracle DB 서버와 연결해서 SQL문을 실행하는 구조는 같습니다.
'SQL' 카테고리의 다른 글
오라클 데이터 형식 (0) | 2025.07.14 |
---|---|
MEMBER테이블 생성하기 (0) | 2025.07.14 |
사용자와 데이터베이스 생성하기 (0) | 2025.07.14 |
오라클 PDB서버에 접속하기 (0) | 2025.07.14 |
SQL, DBMS의 의미와 필요성 (0) | 2025.07.13 |