분류 전체보기322 2022-07-18-MATCH AGAINST 사용하여 성능 개선 layout : post title : "MATCH AGAINST 사용하여 성능 개선" category : MySQL 원인 mysql에서 content 검색시 like 를 사용하거나 in, 을 사용하여 검색하는 경우 모든 데이터를 검색해야 하기에 access type 이 All 로 실행이 된다. like 사용시 explain format = json select * from company c join employer e on c.id = e.company_id where c.name like '%이름%' ; 결과 값 { "query_block": { "select_id": 1, "table": { "table_name": "c", "access_type": "ALL", "possible_keys": [".. 2023. 2. 27. 2022-07-07-index 사용하여 성능 개선 layout : post title : "index 사용하여 성능 개선하기" category : MySQL 원인 mysql에서 pk 를 생성하는 경우에는 index가 자동으로 생성된다. fk 생성시에도 index 생성되나 예제를 위해 fk는 생략하였다. 그러나 사용하다 보면 위와 같이 테이블 구조가 되어 있으며 company 를 이용하여 employer를 찾는 경우 full scan(type = ALL) 이 발생하게 된다. -- 예제를 만드려고 생성한 쿼리 -- 아래 같은 경우에는 쿼리를 변경하는게 좋다. -- explain -- explain format = json select e.id from employer e join company c on e.company_id = c.id where c.id.. 2023. 2. 27. 2022-07-07-explain layout : post title : "Mysql Explain" category : MySQL MySQL 옵티마이저 MySQL 옵티마이저는 비용에 대하여 어떠한 실행 계획을 사용하여 쿼리 실행 시 발생하는 비용을 예측하여 가장 적은 비용이 발생하는 쿼리를 실행 하도록 한다. 추정 값이기 때문에 실행 시에 다른 결과가 나올 수 있다. EXPLAIN EXPLAIN은 MySQL의 실행 계획에 대하여 설멍하는 명령어이다. JSON 형식의 출력이 가능하며 JSON 형식을 사용하는 경우 더 자세한 내용을 볼 수 있다. explain select employer0_.id as id1_16_0_, employer0_.company_id as company22_16_0_, employer0_.name as name1.. 2023. 2. 27. 2021-04-15-pw 분실 layout : post title : "PW 분실" category : MySQL # 1. 서비스 종료 service mysqld stop # 2. 안전모드 진입 /usr/bin/mysqld_safe --skip-grant & mysql -uroot mysql # 3. 패스워드 변경 UPDATE USER SET password=password('new_passwd') WHERE USER='root'; FLUSH privileges; exit # 4. 서비스 시작 service mysqld start 2023. 2. 27. 이전 1 ··· 16 17 18 19 20 21 22 ··· 81 다음