본문 바로가기

DB

(35)
데이터 베이스... 쿼리... 3년전 프로젝트 할때... 쿼리로 하는 업무가 정말 많았다. ETL 업무였는데 한달에 적재하는 데이터 건수가 약50억건이 넘었으니 그때 정리해 두었던 쿼리 내용만 책한권 정도 될까 싶다. DB 쿼리는 내가 가장 좋아하는 언어? 이다. 왜냐면 직관적이고 왠만하면 바로바로? 결과를 확인할 수 있기 때문이다. 쿼리 이야기를 다시 하는 이유는 몇년동안 들여다 보지 않았던 쿼리를 다시 써야할거 같아서 이다. 별거는 아니고 클라우드 비용 분석을 해야하는데 컬럼갯수가 200개가 넘는다. 일단 첫번째로 데이터 분석(비지니스-업무)이 필요하고, 분석한 내용을 토대로 쿼리를 잘 짜면 된다. 다행이 데이터 건수가 500만건이 안되서 크기는 크지는 않지만 컬럼수가 많다보니 ... 업무를 분석하기가 쉽지는 않다. 일단 예전에 ..
Postgresql 백업 및 복구 PostgreSQL에서 SQL 덤프를 통한 백업으로 pg_dump 명령어를 제공한다. pg_dump 명령어를 통해 백업을 하면 디폴트로 dump 파일로 저장된다. 0. 샘플 테이블 생성 CREATE TABLE table_01 ( id SERIAL PRIMARY KEY, title text, name text, age text, information text ); - 샘플 데이터 INSERT 작업 수행 및 조회 INSERT INTO table_01 values(1, 'test', 'test', 'test', 'test'); select * from public.table_01; 1. 특정 DB만 백업 및 복원 - 백업 : pg_dump -U {소유주} {DB명} > {백업파일명} pg_dump -U pos..
Grafana를 활용한 Postgresql 모니터링 환경 구성 # Grafana를 활용한 DB 모니터링 환경 구성 - DB 모니터링 툴에는 다양한 애플리케이션이 존재 - 오픈소스 중 모니터링에 가장 많이 사용하고 있는 Grafana를 활용하여 DB 모니터링 환경 구성 - EC2 및 온프레미스 환경이라고 가정하고 진행 1. Grafana 설치 // 설치 전 확인 # sudo apt-get update # sudo apt-get upgrade # apt-get install -y software-properties-common # sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main" # wget -q -O - https://packages.grafana.com/gpg.key | su..
Postgresql DB 백업 및 복원 # Postgresql DB 백업 및 복원 스크립트 작성 - 일단 superuser 계정으로 접속을 해야함. - 백업 스크립트 : db_backup.sh #!/bin/bash #----- DELETE FILE_NAME SETTING ----- DEL_FILE=$(date -d '30 day ago' +'%Y-%m-%d_')"*.dump" #----- FILE NAME SETTING ----- FILENAME=$(date +"%Y-%m-%d_%H%M").dump #----- BACKUP_DIR SETTING ----- BACKUP_DIR=/var/db_backup cd $BACKUP_DIR echo "DB backup start time : " $(date +"%Y-%m-%d %H:%M:%S") #----..
Redis Desktop Manager 접속 방법 # 일단 정식 버전의 Redis Desktop Manager 는 유료이므로 사용이 불가능하다. 그래서 Another Redis Desktop Manager를 사용하여 접속을 해보자. 일단 설치는 인터넷에서 다운받아서 설치. 설치 후 커넥션 정보는 아래와 같다. - 여기서 주의할점은 Password 설정하는 부분인데 Password 설정은 Redis 설치서버의 redis.conf 파일을 수정하면 된다. redis.conf 파일의 수정정보는 아래의 링크에 있다. 주의할점은 apt-get으로 redis를 설치할 경우 설치경로가 etc 밑에 생기므로 해당 경로의 redis.conf 파일을 수정해 줘야한다. 2022.11.25 - [DB/Redis (레디스)] - EC2에 Redis 설치 데이터 생성 및 조회 w..
Postgresql을 kubernetes에서 실행하기 with EKS # DB를 kubernetes에서 pod와 EBS를 활용하여 구성 0. storageclass 생성 (이건 생성 안해도 됨) 스토리지 클래스를 가장 먼서 생성해야 나머지 리소스를 생성하는데 지장이 없다. # 이건 생성 안해도 됨 kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: test-db-storage provisioner: kubernetes.io/aws-ebs parameters: type: gp2 fsType: ext4 reclaimPolicy: Delete mountOptions: - debug volumeBindingMode: Immediate # PersistentVolume 생성 kind: PersistentVolume a..
EC2에 Redis 설치 데이터 생성 및 조회 with BastionHost # EC2에 Redis를 설치하고 Redis Desktop Manager를 설치 후 ssh 터널링을 통해 Redis에 접근 1. EC2에 Redis 설치 # 업데이트 apt-get update # 설치 apt install redis-server 2. Redis 설정 편점 # 설정 편집 # 상단의 main restricted 2개편집, 각각 universe multiverse 입력 후 저장, 아래의 부가설명 참조 vim /etc/apt/sources.list # 저장된 경로의 redis.conf 파일을 vim으로 열고 편집 ex) vim /etc/redis/redis.conf # redis.conf maxmemory 500m # 최대메모리 설정 maxmemory-policy noeviction allke..
EC2에 몽고DB 설치 후 외부에서 접근하기 with 터널링 # 터널링을 통해 외부에서 접근 가능한 몽고 DB를 생성 및 접근 1. EC2 인스턴스 설치 후 EC2 인스턴스를 Private 망으로 연결한다. 2021.10.24 - [⭐ AWS/EC2] - EC2 생성 EC2 생성 EC2 인스턴스 생성 1. 인스턴스 시작을 클릭하여 EC2 생성을 시작합니다. 2. 설치할 OS를 확인하고 선택을 클릭합니다. 3. 원하는 스펙을 선택하고 다음으로 넘어 갑니다. 4. 네트워크를 구성 후 다음 may9noy.tistory.com 2. MongoDB 설치 - SSH 접속 설치를 위해 root 권한으로 변경한다. ubuntu@:~$ sudo su - root@:~# - MongoDB public GPG key 가져오기 아래 명령어를 통해 MongoDB public GPG ke..