MySQL
-
[MySQL] 인덱스(INDEX) 정리MySQL 2023. 4. 13. 16:24
1. INDEX 지정한 컬럼들을 기준으로 메모리 영역에 일종의 목차를 생성 INDEX 는 MYI (MySQL Index) 파일에 저장 된다 INDEX 는 테이블의 동작속도(조회)를 높여주는 자료구조 INDEX 는 하나 혹은 여러 개의 컬럼에 대해 설정할 수 있다. (단일 또는 여러컬럼을 묶어 복합 INDEX) INDEX 가 없다면 Table Full Scan 이 일어나 성능 저하되거나 치명적인 장애가 발생 할 수 있다 SELECT 속도는 빨라지지만 UPDATE, INSERT, DELETE 의 속도는 저하된다는 단점이 있다 2. ORDER BY 와 GROUP BY에 대한 INDEX INDEX는 ORDER BY 와 GROUP BY 에도 영향을 끼치는데 다음과 같은 경우에는 INDEX를 타지 않는다 ORDER..
-
[MySQL] SQL 오류(1153): Got a packet bigger than 'max_allowed_packet' bytesMySQL 2021. 5. 31. 11:56
#SQL 오류(1153): Got a packet bigger than 'max_allowed_packet' bytes 백업 쿼리를 복원하는 과정에서 다음과 같이 오류가 발생하였다. SQL 오류(1153): Got a packet bigger than 'max_allowed_packet' bytes MySQL에 설정되어 있는 최대 전송 패킷값을 초과하였기 때문이다. mysql -u proxy -p set global max_allowed_packet=1000000000; Query OK, 0 rows affected (0.01 sec) mysql> set global net_buffer_length=100..
-
[MySQL] MySQL 좌표로 범위 검색 쿼리MySQL 2021. 4. 17. 22:52
# MySQL 좌표로 범위 검색 쿼리 이번에 회사 프로젝트를 진행하면서 위도와 경도 값을 사용해 특정 범위 안의 데이터만 가져와야하는 작업이 있어 해당 쿼리를 사용해 데이터를 가져오는데 성공했다. 일단 내눈에는 좀 복잡해 보여서 기록해 두어야 겠다. // 값으로 넘겨줄 데이터 // 해당 좌표는 고덕동 입니다. // 37.56246970000000 (위도), 127.16023239999998 (경도) // DB 데이터 : lat = 위도 와 lon = 경도 // distance 는 거리 단위를 나타내며 단위는 km 이다. // query => 해당 좌표 5km 이내의 상품 데이터 SELECT *,(6371*ACOS(COS(RADIANS(37.56246970000000))*COS(RADIANS(lat))*C..