일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 파티셔닝
- RDS
- VPC
- 투자
- MySQL
- oracle
- DB
- SQL Server
- 조인
- 오렌지
- Linux
- 시스템 성능
- mysql error
- 펀드
- 성능
- 오라클
- DBeaver
- 개인연금저축펀드
- 에러
- 재테크
- 리눅스
- 주식
- 데이터베이스
- 인덱스
- azure sql
- 백업및복구
- AZURE
- 애져
- AWS
- EC2
- Today
- Total
목록전체글 (117)
미스터 역마살

문제 우리 회사는 PC를 조립하여 판매하는 회사이다. 나는 재고관리부터 생산, 판매관리의 전 과정을 관리하는 시스템을 만드는 중이다. 우리는 PC를 조립하기 위하여 다양한 업체로 부터 부품을 공급받는다. 부품은 외장 케이스, 마더보드, 비디오카드, 하드 디스크등 다양하게 존재한다. 부품번호, 부품명, 재고수량을 관리한다. 각 부품은 다양한 업체에서 납품을 한다. 우리는 납품업체를 업체번호, 업체명, 연락처를 관리한다. 동일한 부품을 두 개 이상의 업체에서 납품하기도 한다. 또한 각 업체별로 납품한 부품, 납품일자, 납품수량을 관리한다. 한 업체에서는 동일한 부품을 하루에 한번만 납품하며, 2번이상 납품하지 않는다. 공장은 생산라인이 다양하게 존재하며, 이를 관리한다. 생산라인번호, 라인구축일자를 관리한다..

binlog란? Mysql 서버에서 CREATE, DROP, ALTER와 같은 DDL과 DML을 통해 DB에 변경사항이 생길때 그 변화된 이벤트를 기록하는 이진 파일이 있는데 이것이 바로 바이너리 로그(binlog)라고 한다. slow나 select등 조회 문법은 제외되며 binlog는 2가지의 중요한 용도가 있다. binlog용도 1. 복제 구성에 사용 Mysql에서는 Replication이라는 부하분산 기능을 제공하는데 이때 binlog를 사용한다. binlog는 master-slave구조에서 master db에 생성이 되고 slave db는 master db의 binlog를 읽어들여 똑같이 이벤트를 발생시켜 master와 동일한 구조로 만들게 된다. Replication 순서 Master db가 트..

Slow Query Log 확인 절차 1. 현재 설정 확인 mysql> SHOW VARIABLES LIKE 'slow_query_%'; +---------------------+---------------------------------------+ | Variable_name | Value | +---------------------+---------------------------------------+ | slow_query_log | OFF | | slow_query_log_file | /var/lib/mysql/ip-10-0-1-175-slow.log | +---------------------+---------------------------------------+ 2 rows in set (..

쿼리 힌트 Mysql 서버에서 사용 가능한 쿼리 힌트는 2가지로 구분 할수 있다 인덱스 힌트 옵티마이저 힌트 참고로 Mysql 5.7 버전까지는 힌트를 쓰더라도 옵티마이저가 힌트 외의 실행계획을 평가 하기 때문에 실행계회을 세우는 오버로드를 줄여 주지는 못한다. 다만 옵티마이저의 잘못된 실행계획을 방지할 순 있다. 8.0 부터는 힌트 작성시 옵티마이저가 실행계획을 만들지 않기 때문에 오버로드 측면에서는 도움이 된다. 인덱스 힌트 인덱스 힌트는 Mysql 5.6 이전까지 사용했었고 그 이후부터는 옵티마이저 힌트가 추가됨에 따라 옵티마이저 힌트 사용을 권고하고 있다. 인덱스 힌트를 사용하게 되면 ANSI SQL문법에 위배되며 Mysql 이 아닌 타 DBMS에서는 에러가 발생한다. 하지만 옵티마이저 힌트는 타..

Mysql 프로파일링 mysql은 기본적으로 비활성화(OFF)되어 있으므로 프로파일링을 진행하기 위해서는 활성화 작업을 해야함 show variables like 'profiling%'; * 결과 +------------------------+-------+ | Variable_name | Value | +------------------------+-------+ | profiling | OFF | | profiling_history_size | 15 | +------------------------+-------+ set profiling = 'ON'; 프로파일링 수행할 SQL 출력 SELECT 사원번호 FROM 사원 WHERE 사원번호 = 100000; * 결과 +----------+ | 사원번호 ..

확장된 실행 계획 다음은 확장된 실행계획을 알아보자 EXPLAIN FORMAT = TRADITIONAL 기본적인 실행계획은 EXPLAIN 키워드로 입력하며 기본 포맷은 TRADITIONAL이다. 따라서 명시하지 않아도 다음과 같이 기본적인 실행계획 정보가 출력됨 EXPLAIN FORMAT = TRADITIONAL SELECT * FROM 사원 WHERE 사원번호 BETWEEN 100001 AND 200000; * 결과 +----+-------------+-------+------------+-------+---------------+---------+---------+------+-------+----------+-------------+ | id | select_type | table | partiti..