DataBase
-
docker-compose.ymlversion: '3.8' # Docker Compose 파일 버전services: postgres: image: postgres:16 # PostgreSQL 최신 이미지 사용 container_name: postgresql-container # 컨테이너 이름을 'postgresql-container'로 지정 environment: POSTGRES_USER: postgres # 슈퍼유저 계정으로 'postgres' 사용 권장 POSTGRES_PASSWORD: 비밀번호 # DB 접속 비밀번호 설정 POSTGRES_DB: 데이터베이스 # 생성할 기본 데이터베이스 이름 설정 ports: - "5432:5432" # 호스..
PostgreSQL - docker compose 파일로 PostgreSQL 디비 실행하기docker-compose.ymlversion: '3.8' # Docker Compose 파일 버전services: postgres: image: postgres:16 # PostgreSQL 최신 이미지 사용 container_name: postgresql-container # 컨테이너 이름을 'postgresql-container'로 지정 environment: POSTGRES_USER: postgres # 슈퍼유저 계정으로 'postgres' 사용 권장 POSTGRES_PASSWORD: 비밀번호 # DB 접속 비밀번호 설정 POSTGRES_DB: 데이터베이스 # 생성할 기본 데이터베이스 이름 설정 ports: - "5432:5432" # 호스..
2024.08.15 -
docker-compose.ymlversion: '3.8'services: redis: image: redis:latest # 최신 Redis 이미지를 사용 container_name: redis-container # 컨테이너 이름을 'redis-container'로 지정 ports: - "6379:6379" # 로컬의 6379 포트를 Redis 컨테이너의 6379 포트에 매핑 volumes: - redis_data:/data # 로컬의 'redis_data' 볼륨을 컨테이너의 /data 디렉토리에 매핑하여 데이터 영속성 유지 environment: REDIS_PASSWORD: 비밀번호 # Redis 서버에 접근할 때 사용할 비밀번호 환경 ..
Redis - docker compose 파일로 redis 디비 실행하기docker-compose.ymlversion: '3.8'services: redis: image: redis:latest # 최신 Redis 이미지를 사용 container_name: redis-container # 컨테이너 이름을 'redis-container'로 지정 ports: - "6379:6379" # 로컬의 6379 포트를 Redis 컨테이너의 6379 포트에 매핑 volumes: - redis_data:/data # 로컬의 'redis_data' 볼륨을 컨테이너의 /data 디렉토리에 매핑하여 데이터 영속성 유지 environment: REDIS_PASSWORD: 비밀번호 # Redis 서버에 접근할 때 사용할 비밀번호 환경 ..
2024.08.15 -
DB 명령어-- 데이터베이스 생성createdb 데이터베이스명-- 데이터베이스 삭제dropdb 데이터베이스명-- PostgreSQL 클라이언트(psql) 실행 후 데이터베이스에 접속psql 데이터베이스명-- PostgreSQL 클라이언트(psql) 실행 후 데이터베이스 목록 보기\l-- 다른 데이터베이스로 전환\c 데이터베이스명테이블 명령어-- 데이터베이스에 접속한 후 실행-- 테이블 생성CREATE TABLE 테이블명 ( id SERIAL PRIMARY KEY, name VARCHAR(100), age INT);-- 테이블 구조 수정 (예: 열 추가)ALTER TABLE 테이블명 ADD COLUMN email VARCHAR(100);-- 테이블 삭제DROP TABLE 테이블명;-- 테이..
PostgreSQL - DB, 테이블, 데이터 CRUD 명령어DB 명령어-- 데이터베이스 생성createdb 데이터베이스명-- 데이터베이스 삭제dropdb 데이터베이스명-- PostgreSQL 클라이언트(psql) 실행 후 데이터베이스에 접속psql 데이터베이스명-- PostgreSQL 클라이언트(psql) 실행 후 데이터베이스 목록 보기\l-- 다른 데이터베이스로 전환\c 데이터베이스명테이블 명령어-- 데이터베이스에 접속한 후 실행-- 테이블 생성CREATE TABLE 테이블명 ( id SERIAL PRIMARY KEY, name VARCHAR(100), age INT);-- 테이블 구조 수정 (예: 열 추가)ALTER TABLE 테이블명 ADD COLUMN email VARCHAR(100);-- 테이블 삭제DROP TABLE 테이블명;-- 테이..
2024.07.11 -
개요Docker가 설치된 환경에서 docker image를 사용하여 PostgreSQL을 설치하는 과정.이미지를 변경하여 다른 버전의 pg(postgresql 약어)도 설치가 가능합니다.과정1. 이미지 다운로드docker pull postgres:16docker images # 다운로드 완료 확인2. 컨테이너 실행# docker run --name 컨테이너명 -e 환경변수키=환경변수값 -d -p 포트바인딩 이미지명docker run --name postgres -e POSTGRES_PASSWORD=내비밀번호 -d -p 5432:5432 postgres:16docker ps # 실행중인 컨테이너 확인3. 컨테이너 접속docker exec -it postgres bash4. db 접속# psql -h 호스트..
PostgreSQL - docker PostgreSQL 16 설치개요Docker가 설치된 환경에서 docker image를 사용하여 PostgreSQL을 설치하는 과정.이미지를 변경하여 다른 버전의 pg(postgresql 약어)도 설치가 가능합니다.과정1. 이미지 다운로드docker pull postgres:16docker images # 다운로드 완료 확인2. 컨테이너 실행# docker run --name 컨테이너명 -e 환경변수키=환경변수값 -d -p 포트바인딩 이미지명docker run --name postgres -e POSTGRES_PASSWORD=내비밀번호 -d -p 5432:5432 postgres:16docker ps # 실행중인 컨테이너 확인3. 컨테이너 접속docker exec -it postgres bash4. db 접속# psql -h 호스트..
2024.07.11 -
Postgresql이란?정의Postgresql이란 글로벌 개발그룹에서 만든 무료 오픈 소스 객체 관계형 데이터베이스 시스템(ORDBMS)이다.쿼리 예시SELECT first_name, last_name, skills[1] AS primary_skill # 배열 데이터 타입을 지원FROM employees WHERE 'Training' = ANY (skills);장점완전히 오픈 소스이며, 무료이다.데이터 무결성과 일관성을 매우 중요하게 여긴다.Ex. 잘못된 참조로 인해 데이터가 불일치 하지는 않는지 체크한다.다양한 확장 기능과 플러그인을 통해 기능을 확장할 수 있다.복잡한 데이터 타입과 사용자 정의 타입 등을 지원한다.단점고성능 작업에서 속도가 다소 느릴 수 있다.학습이 어렵다.
Postgresql - Postgresql이란?Postgresql이란?정의Postgresql이란 글로벌 개발그룹에서 만든 무료 오픈 소스 객체 관계형 데이터베이스 시스템(ORDBMS)이다.쿼리 예시SELECT first_name, last_name, skills[1] AS primary_skill # 배열 데이터 타입을 지원FROM employees WHERE 'Training' = ANY (skills);장점완전히 오픈 소스이며, 무료이다.데이터 무결성과 일관성을 매우 중요하게 여긴다.Ex. 잘못된 참조로 인해 데이터가 불일치 하지는 않는지 체크한다.다양한 확장 기능과 플러그인을 통해 기능을 확장할 수 있다.복잡한 데이터 타입과 사용자 정의 타입 등을 지원한다.단점고성능 작업에서 속도가 다소 느릴 수 있다.학습이 어렵다.
2024.06.25 -
코드 ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'new-password'; 사용 sql에 접속한 후 위의 코드를 사용하면 된다. 출처 https://jjeongil.tistory.com/1484
MYSQL - 유저 비밀번호 변경코드 ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'new-password'; 사용 sql에 접속한 후 위의 코드를 사용하면 된다. 출처 https://jjeongil.tistory.com/1484
2022.03.24 -
정의 DBMS가 Client로부터 요청받은 query를 수행할 때 일정 시간 이상 수행되지 못한 query - slow query 발생 시 로그를 통해 원인을 파악할 수 있다. slow query 잡는 법 어느정도 느려지면, 쿼리 실행문을 로그에 남길건지 postgresql.conf에 설정값을 추가해줘야한다. 1. 발생 로그 남기기 2. 모든 쿼리 실행계획 로그 남기기 3. 쿼리 실행 통계 보기 로그 쌓는 법 슬로우쿼리는 my.cnf 파일 내에서 설정. my.cnf의 경로는 주로 /etc/my.cnf를 사용합니다. 편집기를 통해 다음의 내용을 입력한다. my.cnf로 수정할 경우 mysql 서비스 재시작이 필요함. 항목 my.cnf 추가 내용 해당 값(초) 이상의 로그 기록 long_query_time ..
db - slow query정의 DBMS가 Client로부터 요청받은 query를 수행할 때 일정 시간 이상 수행되지 못한 query - slow query 발생 시 로그를 통해 원인을 파악할 수 있다. slow query 잡는 법 어느정도 느려지면, 쿼리 실행문을 로그에 남길건지 postgresql.conf에 설정값을 추가해줘야한다. 1. 발생 로그 남기기 2. 모든 쿼리 실행계획 로그 남기기 3. 쿼리 실행 통계 보기 로그 쌓는 법 슬로우쿼리는 my.cnf 파일 내에서 설정. my.cnf의 경로는 주로 /etc/my.cnf를 사용합니다. 편집기를 통해 다음의 내용을 입력한다. my.cnf로 수정할 경우 mysql 서비스 재시작이 필요함. 항목 my.cnf 추가 내용 해당 값(초) 이상의 로그 기록 long_query_time ..
2022.03.10 -
B- Tree 전산학에서 B-트리는 데이터베이스와 파일 시스템에서 널리 사용되는 트리 자료구조의 일종이다. - 자료를 정렬된 상태로 보관하고, 삽입 및 삭제를 대수 시간으로 할 수 있다. - 이진 트리는 항목이 삽입될 때 하향식으로 구성되는 데 반해, B-트리는 일반적으로 상향식으로 구성 B+ Tree (Quaternary Tree) 컴퓨터 과학용어로, 키에 의해서 각각 식별되는 레코드의 효율적인 삽입, 검색과 삭제를 통해 정렬된 데이터를 표현하기 위한 트리자료구조의 일종 - B트리와 대조적으로 B+트리는, 모든 레코드들이 트리의 가장 하위 레벨에 정렬되어있다. 오직 키들만이 내부 블록에 저장된다. - 동적이며, 각각의 인덱스 세그먼트(블록 또는 노드라고 불리는) 내에 최대와 최소범위의 키의 개수를 가지..
db - B Tree, B+ Tree, B- TreeB- Tree 전산학에서 B-트리는 데이터베이스와 파일 시스템에서 널리 사용되는 트리 자료구조의 일종이다. - 자료를 정렬된 상태로 보관하고, 삽입 및 삭제를 대수 시간으로 할 수 있다. - 이진 트리는 항목이 삽입될 때 하향식으로 구성되는 데 반해, B-트리는 일반적으로 상향식으로 구성 B+ Tree (Quaternary Tree) 컴퓨터 과학용어로, 키에 의해서 각각 식별되는 레코드의 효율적인 삽입, 검색과 삭제를 통해 정렬된 데이터를 표현하기 위한 트리자료구조의 일종 - B트리와 대조적으로 B+트리는, 모든 레코드들이 트리의 가장 하위 레벨에 정렬되어있다. 오직 키들만이 내부 블록에 저장된다. - 동적이며, 각각의 인덱스 세그먼트(블록 또는 노드라고 불리는) 내에 최대와 최소범위의 키의 개수를 가지..
2022.03.10