IT Study/데이터베이스 5

MySQL 운영 노하우(Know-how) II - DATA TYPE 알고 쓰자!

(읽기 전 주의) 이 글은 개인의 경험에 의해 작성된 것이므로, 100% 정답이 아니며, 더 다양한 방법, 더 나은 방법이 존재할 수 있습니다. 또한, 자세한 설명보다는 왜 운영 노하우로 선정했는지, 흔히 하는 실수가 무엇인지, 내가 놓쳤던 것들은 무엇인지에 대한 이해를 돕기 위해, 비교적 간단하게 경험을 바탕으로 설명하고 있습니다 (혹은, 설명하려고 노력하고 있습니다). 이 글은 계속해서 운영하면서 실수하거나, 동료들이 쉽게 놓치거나 하는 부분을 계속해서 추가해 나갈 것입니다. 또한, 좋은 팁들이 있다면 댓글에 공유 부탁드립니다! (이번 2편에서는 DATA TYPE에 대해 실수 혹은 놓치고 있는 부분들에 대해, 길게 기록해 두도록 하겠습니다) 1편 보러가기 MySQL 운영 노하우(Know-how) I ..

MySQL 운영 노하우(Know-how) I

(읽기 전 주의) 이 글은 개인의 경험에 의해 작성된 것이므로, 100% 정답이 아니며, 더 다양한 방법, 더 나은 방법이 존재할 수 있습니다. 또한, 자세한 설명보다는 왜 운영 노하우로 선정했는지, 흔히 하는 실수가 무엇인지, 내가 놓쳤던 것들은 무엇인지에 대한 이해를 돕기 위해, 비교적 간단하게 경험을 바탕으로 설명하고 있습니다 (혹은, 설명하려고 노력하고 있습니다). 이 글은 계속해서 운영하면서 실수하거나, 동료들이 쉽게 놓치거나 하는 부분을 계속해서 추가해 나갈 것입니다. 또한, 좋은 팁들이 있다면 댓글에 공유 부탁드립니다! 1. EXPLAIN 커맨드를 사용하라! select 절 안에 explain 절을 붙이면, MYSQL에서 해당 query를 어떻게 실행할 것인지 실행 계획이 나온다. 실제로 q..

MySQL에서 위도,경도 활용하여 거리 계산하기

순서 거리 계산 하기 하버사인 공식 MySQL 하버사인 공식 적용 (내용이 궁금하지 않으면, 바로 3번으로!) 1. 거리 계산하기 사실 이 내용에 대해서는 상당히 많은 부분의 설명이 필요하다. 위도와 경도가 무엇인지 알아야 하며, 지구의 반지름에 대해서도 알아야 하고.. sin, cos에 대해서도 알아야 한다. 상당히 많은 부분을 알아야 하므로 이 부분에 대해서 간단히 넘어가려 한다. (그래도 궁금한 건 못 참는다 하시는 분들은 여기를 참조하세요.) 56. 이걸 알아야 하나? 위도, 경도, 거리 계산 이번 공간에서는 지도의 위도( latitude, 래티튜드 ), 경도 ( longitude, 란져튜드 )에 알아보려고 해요. ... blog.naver.com 2-D ( x-y ) 좌표에서 두 점 사이의 거리..

MYSQL 쿼리 튜닝(2) - EXPLAIN

https://dev.mysql.com/doc/refman/8.0/en/explain.html EXPLAIN이란? Explain의 기능은, MySQL 웹페이지에 이렇게 기록되어있다. Obtaining Table Structure Information Obtaining Execution Plan Information Obtaining Information with EXPLAIN ANALYZE 테이블 구조 정보 확인 쿼리 실행 계획 정보 확인 (최적화에 주로 사용됨) 쿼리 실행 분석 정보 확인 (튜닝 시에는 크게 사용되지 않으므로 간단히 설명) (MySQL EXPLAIN 원문 설명) MySQL :: MySQL 8.0 Reference Manual :: 13.8.2 EXPLAIN Statement 13.8.2..

MySQL 쿼리 튜닝 은 어떻게 할까? 기초편 (INDEX)

이번엔 MySQL 쿼리 튜닝에 대해 알아보자. 쿼리 튜닝이란 무엇일까? 쿼리 성능을 일정 수준 이상 끌어올리는 일을 말한다. 튜닝을 하기전에 인덱스라는 개념에 대해서 알아야 쉽게 정리가 된다 그렇다면 인덱스(Index)란 무엇일까? 인덱스(index)란? 인덱스(index)는 테이블에서 원하는 데이터를 쉽고 빠르게 찾기 위해 사용합니다. 이러한 인덱스는 자주 사용되는 필드 값으로 만들어진 원본 테이블의 사본이라고 생각할 수 있습니다. MySQL은 데이터를 검색할 때 첫 번째 필드부터 차례대로 테이블 전체를 검색합니다. 따라서 테이블이 크면 클수록 데이터를 탐색하는 시간도 많이 늘어나게 됩니다. 하지만 인덱스를 사용하면 테이블 전체를 읽지 않아도 되므로, 검색과 질의에 대한 처리가 빠르게 이루어집니다. 이..