본문 바로가기

mysql

(3)
MySQL - Too many connections java.sql.SQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections" 서버 기동시 MySQL에 커넥션을 맺을 때 발생하는 에러 원인 : MySQL에 설정해둔 max connection 수가 모자라서 발생하는 문제해결책1. root 혹은 어드민 권한을 가진 계정으로 접속해서 set global max_connections = {변경할 커넥션 수}; 를 입력하면 즉시 적용2. my.cnf 파일에 max_connections = {변경할 커넥션 수} 를 입력하고 리스타트
쿼리 실행 계획 1. 실행 계획 확인 하는 법 - 쿼리 앞에 explain을 붙여 줌 2. 실행 계획 각 항목이 의미하는 내용 구분 설명 ID Select 아이디로 Select를 구분하는 번호 Select_type Select에 대한 타입 Table 참조하는 테이블 Type 조인 혹은 조회 타입 Possible_Keys 데이터를 조회할 때 DB에서 사용할 수 있는 인덱스 리스트 Key 실제로 사용할 인덱스 Key_len 실제로 사용할 인덱스의 길이 Ref Key 안의 인덱스와 비교하는 칼럼(상수) Rows 쿼리 실행 시 조사하는 행 수 Extra 추가 정보 3. Select_type 구분 설명 SIMPLE UNION이나 서브쿼리가 없는 단순 SELECT PRIMARY 서브쿼리가 있을 때 가장 바깥쪽에 있는 SELECT ..
MySQL 특징 1. 주요 스토리지 엔진의 특징 MyISAM InnoDB Archive 스토리지 제한 256TB 64TB None 트랜잭션 No Yes No Locking 레벨 Table Row Row 인덱스 B-Tree B-Tree No Cache Index Data/Index No 파티셔닝 Yes Yes Yes Cluster Index No Yes No Foreign Key No Yes No MyISAM 1. MySQL에서 가장 오래된 스토리지 엔진 2. 파일 기반 스토리지 엔진이며 데이터에 대한 키(인덱스)만 메모리에 올려서 처리 3. 트랜잭션을 지원하지 않고 Table Level Lock으로 데이터 변경을 처리 4. Fulltext Indexing(텍스트 전문을 검색), Geometric Spatial Index..