728x90

Computer Science/DB 4

[MySQL/Mac] root 비밀번호 초기화하기

개인 컴퓨터에서 개발을 하다보면 DB를 로컬 환경에 설치하게 되는데, 그때마다 root 비밀번호가 나를 곤란하게 한다. 비밀번호를 설정 안하고 싶지만, 그래도 형식상으로 설정을 하다보면 늘 비밀번호를 까먹게 된다. root 비밀번호를 초기화하는 방법에 대해 알아보자. MySQL 8 Mac에서 homebrew로 설치 위 환경을 전제로 썼지만, Mac OS + MySQL이라면 명령어는 거의 비슷할 것이다. (MySQL 버전에 따라 다를 순 있다.) 1. 서버 종료 후, mysqld_safe로 인증 없이 실행하도록 서버 실행 아래 명령어가 제대로 동작하지 않거나, 명령어가 없다고 뜨는 경우 환경변수를 체크해보도록 하자. mysql.server stop mysqld_safe --skip-grant-tables ..

Computer Science/DB 2024.02.12

윈도우에 Redis 설치해서 사용하기 with Docker

필요한 것 윈도우 PC Docker Desktop 약간의 시간 Docker Desktop 설치 Docker 설치는 아래 경로에서 진행하면 된다. https://www.docker.com/products/docker-desktop 설치하고 재시작이 한 번 필요하므로 재시작을 해줘야 한다. x64프로세서(특히 AMD)를 사용하는 경우, WSL 2가 없으면 Docker Engine이 실행이 안된다. 별도로 설치해줘도 되고, 재시작을 하면 설치하라고 안내 해주는 경로가 나오는데 그곳에서 설치하면 된다. 경로를 찾지 못한 사람들은 아래 경로에서 "x64 머신용 최신 WSL2 Linux 커널 업데이트 패키지"를 설치하고, WSL 2를 기본 버전으로 설정하면 된다. https://docs.microsoft.com/k..

Computer Science/DB 2021.12.04

MySQL(MariaDB)의 EXPLAIN으로 실행 결과 분석하기

실행 계획이라고 하면, 쿼리가 어떻게 데이터를 불러오는지에 대한 계획을 의미한다. 실행 계획을 통해서 어떤 테이블이 어떤 방식으로 조회됐는지 확인할 수 있다. 조회 쿼리의 인덱스 사용 유무를 확인할 때, 전체 조회 대상 중에서 검색 조건에 의해 어느정도의 비율로 필터링 되는지와 같이 성능 튜닝에 필요한 요소들을 확인하고자 할 때 쿼리 실행 계획을 확인해보는 것이 좋다. 실행 계획을 확인하는 데 있어서, MySQL(MariaDB)에서는 EXPLAIN, DESCRIBE, DESC를 사용한다. 세 명령어 모두 같은 결과를 내기 때문에 편한 걸 사용하면 된다.(필자는 EXPLAIN을 많이 쓴다.) 사용 예시 EXPLAIN SELECT * FROM employee WHERE employee_num BETWEEN ..

Computer Science/DB 2021.11.07

Elasticsearch와 RDBMS의 용어 비교, 그리고 장단점

Elasticsearch와 RDBMS의 용어 비교 RDBMS Elasticsearch Schema Mapping Database Index Partition Shard Table Type Row Document Column Field Elasticsearch를 써야 할 때? RDBMS 단순 텍스트 매칭에 근거해서 검색을 지원한다. 최신 RDBMS는 Full-text 검색을 지원하지만, 아직도 많은 곳에서 사용하는 RDBMS에서는 이를 지원하지 않는다. 지원한다고 하더라도, 한글에서는 썩 좋은 능력을 보여주지 못하는 부분이 있다. 반면 Elasticsearch는 n-gram 기반 Full-text 검색을 지원한다. 여러 단어로 변형하거나, 동의어/유의어에 근거한 검색도 가능하고 여러 플러그인으로 형태소 기..

Computer Science/DB 2021.06.13
728x90