DBMS 통신의 이해
Jan 19, 2024
![DBMS 통신의 이해](https://inblog.ai/_next/image?url=https%3A%2F%2Finblog.ai%2Fapi%2Fog%3Ftitle%3DDBMS%2520%25ED%2586%25B5%25EC%258B%25A0%25EC%259D%2598%2520%25EC%259D%25B4%25ED%2595%25B4%26logoUrl%3Dhttps%253A%252F%252Finblog.ai%252Finblog_logo.png%26blogTitle%3Dkhh&w=1920&q=75)
Contents
![notion image](https://inblog.ai/_next/image?url=https%3A%2F%2Fwww.notion.so%2Fimage%2Fhttps%253A%252F%252Fprod-files-secure.s3.us-west-2.amazonaws.com%252F190e681e-8a6a-4223-a5b4-4d781100c280%252Fff699fa3-4961-409d-8cde-db031b07699e%252F2.jpg%3Ftable%3Dblock%26id%3D96ea2e47-28d3-4a27-87aa-e81c5502759f%26cache%3Dv2&w=3840&q=75)
리스너는 누가 접속하는지 계속 보다가 접속한 클라이언트에게 연결을 해주는 것 (통신X)
3306포트가 리스너
클라이언트 3명이 접속한다면,
서버소켓과 클라이언트 3명해서 기본 스레드 4개 필요하다.
파일시스템 FS
하드디스크 OS윈도우가 파일을 관리한다.
DBMS는 테이블 관리한다.
쿼리(명령어)로 찾는다.
DBMS에 툴로 명령을 내린다. 소켓과 소켓으로 연결됨
버퍼에다 쿼리를 넣는다.
read (select, insert, update, delete)
update → delete+select
버퍼에 결과 값 돌아온다.
select는 테이블 형태로 돌아온다.
그 외에는 숫자로 줌
행이 바뀐 거 마다 숫자로 카운트
![notion image](https://inblog.ai/_next/image?url=https%3A%2F%2Fwww.notion.so%2Fimage%2Fhttps%253A%252F%252Fprod-files-secure.s3.us-west-2.amazonaws.com%252F190e681e-8a6a-4223-a5b4-4d781100c280%252F10699610-ae49-494a-9de6-36543ad20681%252F%2525ED%252599%252594%2525EB%2525A9%2525B4_%2525EC%2525BA%2525A1%2525EC%2525B2%252598_2024-01-19_143006.png%3Ftable%3Dblock%26id%3De755ebb7-9ea9-4ee1-af4a-cbd86ab77aa6%26cache%3Dv2&w=3840&q=75)
ex) 3개 요청했는데 숫자2를 주면 2만 성공했다.
오류는 -숫자로 옴
ex) 문법을 틀려서 요청하면 -1
반이중
DBMS 하려면 필요한 것
1. IP
- 포트
- ID
- PW
- 프로토콜명
(어디에) 버퍼를 달아야 한다.
![notion image](https://inblog.ai/_next/image?url=https%3A%2F%2Fwww.notion.so%2Fimage%2Fhttps%253A%252F%252Fprod-files-secure.s3.us-west-2.amazonaws.com%252F190e681e-8a6a-4223-a5b4-4d781100c280%252F516bf9d2-412e-4ab7-a640-1ee08117acbe%252F3.jpg%3Ftable%3Dblock%26id%3Dda9ff1e3-d239-4db3-a3f7-4d11bfe2c67a%26cache%3Dv2&w=3840&q=75)
디버깅
없다
- wait
- lost
→ 포트, IP 잘못 작성 or 안 켜져 있다.
refuse 거절
→ 인증이 안돼서 (IP, PW)
체크!
연결 → 섹션이 만들어졌다 라고 표현
unknown protocal
message X
약속하지 않으면 통신할 수 없다.
연결 소켓 파싱해서 (자기)자바 오브젝트에 넣어야 한다.
스트림으로 스트링으로 오는데 클래스로 받아야 여러 타입을 받을 수 있다.
Share article