본문 바로가기

CS34

[Linux] 쉘 스크립트 실행과 프로세스 관리 쉘 스크립트 실행과 프로세스 관리쉘 스크립트 실행 방법 (sh, ./파일.sh)프로세스 개념과 PIDforeground / background 실행 방식백그라운드 작업 관리 명령어 (jobs, fg, bg, kill)데몬과 일반 스크립트의 차이✅ 쉘 스크립트와 실행📌 .sh: 쉘 스크립트 파일확장자 .sh는 쉘(Shell)에서 실행될 수 있는 스크립트 파일윈도우에서 .bat(배치파일)과 유사한 역할기본적으로 bash, sh, zsh 등의 셸에서 실행됨✅ 쉘 스크립트 실행 방법실행 방식설명예시sh 파일명.sh현재 셸에서 sh 명령어로 실행sh ex01.sh./파일명.sh실행 권한 부여 후 직접 실행chmod +x ex01.sh → ./ex01.sh🔸 sh ex01.sh는 "sh 셸에서 파일을 해석해 실.. 2025. 4. 17.
[MySQL] Query Cost가 높아지는 조건과 성능 개선 포인트 ✅ Query Cost가 높아지는 조건과 성능 개선 포인트✅ 1. 쿼리 비용(Query Cost)이란?MySQL 옵티마이저(optimizer)가 계산한 논리적 실행 비용EXPLAIN 또는 EXPLAIN ANALYZE에서 cost=0.15..23.80 이런 식으로 나타남크다고 해서 항상 "나쁘다"는 뜻은 아님 → 상대적 판단 기준주로 다음 요소가 반영됨:디스크 I/O 비용 (풀 테이블 스캔, 정렬, 임시 테이블)읽는 행 수인덱스 사용 여부조인 순서반복 루프 횟수✅ 2. 쿼리 비용이 높아지는 주요 조건 + 개선 방향조건성능 저하 원인개선 포인트1. type: ALL테이블 전체 스캔 (풀스캔)인덱스 추가, WHERE 조건 개선2. key: NULL인덱스 미사용적절한 인덱스 생성3. WHERE 절에 함수 사용인.. 2025. 4. 13.
[MySQL] UNION / UNION ALL 결과의 고급 활용 예제 UNION 또는 UNION ALL로 만든 결과를👉 다시 조인하거나,👉 집계(GROUP BY, SUM 등) 하거나,👉 조건 필터링(WHERE, HAVING) 하는 고급 실무형 쿼리 예제.이건 리포트, 로그 통합, 활동 분석 등에서 아주 자주 등장하는 패턴.✅ UNION / UNION ALL 결과의 고급 활용 예제🎯 시나리오: 활동 기록 통합 + 분석다음과 같은 3개의 로그 테이블이 있다고 가정하자:테이블설명logins(user_id, login_time)로그인 로그orders(user_id, order_date, amount)주문 로그inquiries(user_id, inquiry_time)고객 문의 로그✅ 1. UNION ALL로 활동 로그 통합SELECT user_id, login_time AS.. 2025. 4. 13.
[MySQL] UNION / UNION ALL ✅ UNION / UNION ALL 완전 정복🧠 1. 기본 개념연산자설명UNION중복 제거하면서 두 SELECT 결과를 수직으로 합침UNION ALL중복 포함한 채로 두 SELECT 결과를 수직으로 합침🔻 공통점:SELECT 결과의 컬럼 수와 순서, 타입이 같아야 함✅ 2. 기본 사용 예시📍 예시 테이블-- 테이블 1: 고객 문의SELECT '문의' AS type, user_id, created_at FROM inquiries-- 테이블 2: 고객 불만 접수SELECT '불만' AS type, user_id, created_at FROM complaints✅ UNIONSELECT '문의' AS type, user_id, created_at FROM inquiriesUNIONSELECT '불만' AS.. 2025. 4. 13.
[MySQL] MySQL의 JOIN 완전 정복 + FULL OUTER JOIN 대체 방법 ✅ MySQL의 JOIN 완전 정복 + FULL OUTER JOIN 대체 방법까지🧠 1. JOIN이란?두 개 이상의 테이블을 공통된 컬럼을 기준으로 연결해 하나의 결과 집합을 만드는 방식실무에서 매우 흔하게 사용됨: 사용자 + 주문, 제품 + 카테고리, 회원 + 주소 등✅ 2. JOIN 종류 요약JOIN 종류설명MySQL 지원 여부INNER JOIN두 테이블 모두에 존재하는 교집합✅ 지원LEFT OUTER JOIN (LEFT JOIN)왼쪽 테이블은 모두 표시, 오른쪽은 일치하는 것만✅ 지원RIGHT OUTER JOIN (RIGHT JOIN)오른쪽 테이블은 모두 표시, 왼쪽은 일치하는 것만✅ 지원FULL OUTER JOIN양쪽 모두 표시 (합집합)❌ MySQL은 직접 지원 안 함CROSS JOIN모든 조.. 2025. 4. 13.
[MySQL] SubQuery 사용 📌 서브쿼리가 사용될 수 있는 위치위치사용 예시SELECT 절컬럼처럼 사용FROM 절인라인 뷰처럼 사용WHERE 절조건 필터로 사용HAVING 절그룹 결과 필터링IN, EXISTS, =, , > 등 조건 내부값 비교📘 서브쿼리란?SELECT문 내부에 포함된 또 다른 SELECT문단일 값, 다중 값, 테이블처럼 사용 가능복잡한 조건을 처리하거나, 결과 비교, 동적 조건 처리에 유용✅ 1. WHERE 절에서 서브쿼리 사용✅ 1-1. 단일 값 반환 서브쿼리 (=, , >, !=, 등)SELECT name, salaryFROM employeesWHERE salary > ( SELECT AVG(salary) FROM employees);📌 설명:salary > 평균 급여 조건을 위해, AVG 결과값을.. 2025. 4. 13.