728x90
728x90
# 상황
EC2 위에 도커로 PostgreSQL DB가 하나 돌아가던게 있었음. -> RDS로 마이그레이션 필요
진행 방식 : EC2 접속 > 도커 접속 > 디비 덤프 > 덤프파일 가져와서 RDS로 Restore
EC2 접속은 gossm 사용함.
# Docker로 띄운 PostgreSQL DB 접근 및 백업
## gossm으로 EC2 접속 후 진행
# postgres docker 접속
sudo docker exec -it postgres /bin/bash
# 도커 내에서 db backup 후 exit
echo $POSTGRES_USER
echo $POSTGRES_PASSWORD
pg_dumpall -U $POSTGRES_USER > pg_dumpall_20230915.backup
exit
# 도커 내 백업파일 복사 후 권한 설정, exit
sudo docker cp postgres:/pg_dumpall_20230915.backup ./pg_dumpall_20230915.backup
sudo chmod 664 pg_dumpall_20230915.backup
exit
# 로컬에서 gossm scp 명령을 통해 백업파일 복사 : pem키 필요
gossm scp -e '-i [pem key file] ec2-user@[server ip]:/home/ubuntu/apicurio/pg_dumpall_20230915.backup ./pg_dumpall_20230915.backup'
# Postgres RDS로 Restore
# psql 설치 in MAC
brew update
brew install libpq
brew link --force libpq
# RDS Restore
psql -h [RDS Endpoint] -p 5432 -U postgres -W -f pg_dumpall_20230915.backup
백업파일 이름은 맘대루,,,,
끝!
728x90
728x90
'공부 > 기타' 카테고리의 다른 글
[개인 terminal 세팅] alias 정리 (0) | 2024.01.28 |
---|---|
[JIRA] Epic -> Parent 변경 사항 (Template URL, JQL) (2) | 2023.12.01 |
[대규모 시스템 설계 기초] 5장 - 안정 해시 (Consistent Hash) 설계 (0) | 2023.06.17 |
[2023-06-15] 당근 SRE 밋업 3회 내용 정리 (0) | 2023.06.17 |
[Sonarqube] Community Edition & PR decorate Plugin docker-compose (0) | 2023.05.17 |
댓글