localhost 와 127.0.0.1
·
DBMS/SQL
둘 다 "내 컴퓨터"를 가리키는 주소이지만, MySQL이 연결을 처리하는 통신 방식이 다릅니다. localhost: 소켓 연결localhost는 특별한 의미를 가진 호스트 이름입니다. MySQL 클라이언트가 localhost로 연결을 시도하면, TCP/IP 프로토콜을 사용하지 않고 "로컬 소켓 파일(Unix domain socket)"을 통해 MySQL 서버에 연결합니다.빠른 속도: 네트워크를 거치지 않고, 운영체제 내부의 로컬 통신 채널을 이용하므로 TCP/IP 연결보다 빠릅니다.보안: 외부 네트워크를 통한 접근이 원천적으로 차단되므로 보안성이 높습니다.제약: MySQL 서버와 클라이언트가 반드시 같은 컴퓨터에 있어야만 사용 가능합니다. 로컬 소켓 파일(Unix domain socket)로컬 소켓 파일..
오프셋 페이지네이션 & 커서 페이지네이션 (SQL)
·
DBMS/SQL
오프셋 페이지네이션과 커서 페이지네이션 비교실행되는 SQL 쿼리문을 살펴보면 두 방식의 차이를 쉽게 이해할 수 있다. 오프셋 페이지네이션SELECT *FROM messagesWHERE channel_id = 'abc-123...'ORDER BY created_at DESCLIMIT 11 OFFSET 10;OFFSET은 정렬된 데이터 중 앞의 10개를 건너뛰고 가져온다.이때 실제로는 앞의 10개도 읽고 버리는 과정이 필요하므로, 데이터가 많아질수록 성능이 떨어질 수 있다.하지만 페이지 번호 기반 접근(page=5 등) 은 직관적이고 편리하다.커서 페이지네이션SELECT *FROM messagesWHERE channel_id = 'abc-123...' AND created_at 이전 페이지의 마지막 커서(..