MariaDB DBMS/MariaDB 튜닝준비(5)
-
[SQL 튜닝 실습] SQL 튜닝 준비 5
DEPENDENT SUBQUERY UNION 또는 UNION ALL 을 사용하는 서브쿼리가 메인테이블에 영향을 받는 경우로, UNION 으로 연결된 단위 쿼리들 중에서 처음으로 작성한 단위쿼리에 해당되는 경우이다. UNION으로 연결되는 첫번째 단위쿼리가 독립적으로 수행하지 못하고 메인테이블로부터 값을 하나씩 공급받는 구조이므로 성능적으로 불리하여 SQL문이 튜닝대상이 된다. explain select 관리자.부서번호, ( select 사원1.이름 from 사원 as 사원1 where 성별 = 'F' and 사원1.사원번호 = 관리자.사원번호 union all select 사원2.이름 from 사원 as 사원2 where 성별 = 'M' and 사원2.사원번호 = 관리자.사원번호 ) as 이름 from ..
2021.08.09 -
[SQL 튜닝 실습] SQL 튜닝 준비 4
PRIMARY explain select 사원1.사원번호, 사원1.이름, 사원1.성 from 사원 as 사원1 where 사원1.사원번호 = 100001 union all select 사원2.사원번호, 사원2.이름, 사원2.성 from 사원 as 사원2 where 사원2.사원번호 = 100002; SUBQUERY 독립적으로 실행되는 서브쿼리로 SELECT절의 스칼라 서브쿼리와 WHERE 절의 중첩 서브쿼리일 경우에 해당 explain select ( select count(*) from 부서사원_매핑 as 매핑 ) as 카운트, ( select max(연봉) from 급여 ) as 급여; 2번과 3번의 id값의 서브쿼리는 각각 독립적으로 실행된다. DERIVED FROM 절에 작성된 서브쿼리로 FROM ..
2021.08.09 -
[SQL 튜닝 실습] SQL 튜닝 준비 3
실행 계획 수행 SQL문으로 요청한 데이터를 어떻게 조회할 것인지에 대한 계획, 즉 경로에 대한 계획이다. (*) 여기서부터는 GUI인 MYSQL 워크벤치를 사용 기본실행계획 수행문 : 아래 아무거나 사용해도 된다. 개인적으로 EXPLAIN 사용 EXPLAIN SQL문; DESC SQL문; 실행계획 수행 SQL문 앞에 EXPLAIN 키워드를 입력하고 실행하면 옵티마이저가 만든 실행계획이 출력된다. use tuning; show tables; explain select * from 사원 where 사원번호 between 100001 and 200000; (*) 마리아 DB 버전 10.0.5 이상에서는 UPDATE 및 DELETE 문에서도 실행계획을 확인할 수 있다. 기본 실행계획 항목 분석 EXPLAIN ..
2021.08.09 -
[SQL 튜닝 실습] SQL 튜닝 준비 2
마리아 디비 환경변수 설정 변수 명 : MARIADB_HOME 변수 값 : C:\Program Files\MariaDB 10.5 Path 추가 : %MARIADB_HOME%\bin 실습데이터 넣기 mysql -uroot -p --port 3333
2021.08.09 -
[SQL 튜닝 실습] SQL 튜닝 준비 1
실습환경 구성하기 마리아DB 설치 다운로드 기본구성 서비스 네임 마리아DB bin 경로로 이동 후 실행 cd C:\Program Files\MariaDB 10.5\bin mysql -uroot -p --port 3333 show databases; 데이터 세팅하기 실습파일 다운로드 다운로드 후 저장 폴더 C:\db_data\
2021.08.09