
프로덕션 데이터베이스란?
프로덕션 데이터베이스는 실제 사용자와 데이터를 제공하는 라이브 운영 데이터베이스입니다. 개발 데이터베이스와 몇 가지 중요한 점에서 다릅니다:프로덕션 vs 개발 데이터베이스
| 측면 | 개발 데이터베이스 | 프로덕션 데이터베이스 |
|---|---|---|
| 목적 | 실험 및 기능 개발 | 실제 사용자 제공 및 비즈니스 데이터 저장 |
| 데이터 | 테스트 데이터, 더미 레코드, 소규모 데이터셋 | 실제 사용자 데이터, 비즈니스 중요 정보 |
| 성능 | 개발 속도에 최적화 | 신뢰성과 사용자 경험에 최적화 |
| 변경 사항 | 자주 스키마 변경, 빠른 반복 | 데이터 마이그레이션 및 롤백 전략을 통한 신중하고 계획적인 변경 |
| 다운타임 | 개발 중 허용 가능 | 최소화하거나 제거해야 함 |
| 백업 | 테스트 시 선택 사항 | 비즈니스 연속성을 위해 중요 |
Agent는 프로덕션 데이터베이스를 수정할 수 없습니다. 이 제한은 프로덕션 데이터베이스를 안전하게 유지하기 위한 것입니다.Agent는 개발 데이터베이스를 수정할 수 있습니다. 게시 시, Agent를 사용하여 개발 데이터베이스 구조에 변경한 사항(예: 열/테이블 추가 및 삭제)이 프로덕션 데이터베이스에 적용됩니다.데이터베이스 패널 > 프로덕션 데이터베이스 > 내 데이터로 이동하여 편집을 토글하면 언제든지 프로덕션 데이터를 수동으로 편집할 수 있습니다.
데이터베이스 기술 및 인프라
Replit의 프로덕션 데이터베이스는 표준 SQL 데이터베이스 제품과 동일한 데이터베이스 도구 및 게시 워크플로를 사용합니다. Neon에 호스팅된 PostgreSQL 16 또는 17을 실행하여 엔터프라이즈급 신뢰성과 성능을 제공합니다.Replit SQL 데이터베이스와의 관계
프로덕션 데이터베이스는 프로덕션 전용 인프라를 사용하면서 동일한 Replit 데이터베이스 경험과 통합됩니다:- PostgreSQL 16 또는 17: 고급 기능이 있는 업계 표준 관계형 데이터베이스
- Neon 인프라: 자동 확장 및 비용 최적화를 제공하는 서버리스 데이터베이스 플랫폼
- 내장 도구: SQL 실행기, Drizzle Studio, 시각적 데이터 관리 도구에 접근
- 환경 변수: 자동으로 생성된 자격 증명을 통한 안전한 연결 관리
데이터베이스 기능, 연결 설정, 기술 사양에 대한 자세한 내용은
SQL 데이터베이스 문서를 참조하세요.
프로덕션 데이터베이스에 안전하게 변경하기
데이터베이스 변경 사항이 포함된 Replit 앱 업데이트를 게시할 때, 다운타임이나 데이터 손실을 피하기 위해 신중한 계획이 필요한 시나리오를 만날 수 있습니다.이전 버전과 호환되지 않는 변경 사항
일부 데이터베이스 변경 사항은 기존 애플리케이션 코드와의 호환성을 손상시킬 수 있습니다. 이러한 변경 사항은 원활한 배포를 보장하기 위해 특별한 처리가 필요합니다.게시 중 게시된 앱에 짧은 다운타임이 발생할 수 있습니다. 이 다운타임은 데이터베이스 변경 사항으로 인해 충돌을 방지하고 안전한 업데이트를 보장하기 위해 앱을 일시적으로 중지해야 하는 경우가 있기 때문입니다. 업데이트가 적용되는 동안 앱을 중지하면 데이터 손실이나 손상으로부터 데이터를 보호하는 데 도움이 됩니다.
일반적인 이전 버전과 호환되지 않는 변경 사항
다음 유형의 변경 사항은 일반적으로 신중한 게시 전략이 필요합니다:- 애플리케이션 코드가 여전히 참조하는 데이터베이스 열 제거
- 기존 코드가 처리할 수 없는 방식으로 열 데이터 유형 변경
- 기본값 없이 기존 테이블에 필수 필드 추가
- 기존 쿼리를 손상시키는 테이블 또는 열 이름 변경
- 기존 애플리케이션 로직을 거부할 수 있는 제약 조건 수정
배포 미리 보기
프로덕션에 데이터베이스 변경 사항을 게시하기 전에, Replit은 미리 보기 환경에서 변경 사항을 안전하게 테스트할 수 있는 도구를 제공합니다. 배포 미리 보기는 실제 사용자에게 영향을 주기 전에 데이터베이스 변경 사항과 애플리케이션 업데이트를 테스트할 수 있는 임시적이고 격리된 프로덕션 환경 복사본입니다. 이 미리 보기 환경은 프로덕션 설정을 반영하지만 독립적으로 운영됩니다. 잠재적인 문제를 조기에 발견하고 라이브 전에 변경 사항이 올바르게 작동하는지 확인하는 데 도움이 됩니다. 미리 보기 환경에서 배포를 테스트하는 것은 사용자에게 영향을 미치기 전에 문제를 파악하는 데 매우 중요합니다. 데이터베이스 변경 사항이 올바르게 작동하는지 확인하려면 다음 단계를 따르세요: 1. 기능 테스트- 데이터베이스 변경 사항이 적용된 후 앱이 여전히 올바르게 작동하는지 확인합니다
- 모든 주요 사용자 흐름을 테스트하여 기능이 유지되는지 확인합니다
- 스키마 수정 후 데이터가 올바르게 표시되는지 확인합니다
- 기존 데이터가 올바르게 마이그레이션되거나 변환되었는지 확인합니다
- 새 필드에 예상 값이나 적절한 기본값이 포함되어 있는지 확인합니다
- 데이터가 새 제약 조건을 따르지 않을 수 있는 엣지 케이스를 테스트합니다
- 미리 보기 환경에서 쿼리 응답 시간을 모니터링합니다
- 새 인덱스가 효과적으로 사용되고 있는지 확인합니다
- 변경 사항이 성능 저하를 일으키지 않는지 확인합니다
포인트인타임 복구
프로덕션 데이터베이스의 경우, 포인트인타임 복구 기능을 사용하여 특정 시점으로 데이터베이스를 복원할 수 있습니다.
청구 및 리소스 사용량
프로덕션 데이터베이스는 서버리스 데이터베이스 제공업체인 Neon을 통해 사용량에 따라 청구됩니다. Neon의 서버리스 기능에는 다음이 포함됩니다:- 인프라 설정 또는 유지 관리 없음
- 사용량 요구에 맞는 자동 확장
- 데이터베이스가 활성화되어 있을 때만 컴퓨팅 시간 청구
데이터베이스 사용량 접근 방법
데이터베이스 사용량 접근 방법
현재 청구 기간의 데이터베이스 컴퓨팅 시간 및 스토리지 사용량을 확인하려면 다음 단계를 따르세요:Replit 데이터베이스 도구에서:
- 프로젝트 편집기에서
Replit 데이터베이스 도구로 이동합니다
- 데이터베이스 드롭다운 메뉴에서 프로덕션을 선택합니다
설정 탭을 선택합니다
- 사용된 스토리지 섹션에서 현재 청구 기간 동안 데이터베이스가 사용한 총 스토리지를 확인합니다.
- 설정을 열고 계정 → 계정 사용량(또는 계정 리소스 제한 보기 / 사용량)으로 이동합니다.
- 리소스 사용량 섹션으로 스크롤합니다.
- 각 Replit 앱의 세부 사항을 보려면 PostgreSQL 스토리지 및 PostgreSQL 컴퓨팅 행을 확장합니다.
일반적인 문제 해결
게시 실패
데이터베이스 문제로 게시가 실패하는 경우:- 게시 로그 확인: 데이터베이스 연결 또는 스키마 충돌에 관한 구체적인 오류 메시지를 확인합니다
- 데이터베이스 연결 자격 증명 확인: 게시된 앱 환경에서 올바르고 접근 가능한지 확인합니다
- 최근 스키마 변경 사항 검토: 기존 애플리케이션 코드와 잠재적인 충돌을 확인합니다
- 미리 보기 환경에서 변경 사항 테스트: 다시 게시하기 전에 확인합니다
프로덕션 데이터베이스 제거
Replit 앱에 더 이상 데이터베이스가 필요하지 않으면 데이터베이스와 모든 데이터를 제거할 수 있습니다.데이터베이스 제거 방법
데이터베이스 제거 방법
Replit 데이터베이스 도구에서:
설정 탭을 선택합니다
- 데이터베이스 제거를 선택하고 예, 데이터베이스 제거를 선택하여 확인합니다
다음 단계
Replit에서의 데이터베이스 관리에 대해 자세히 알아보려면:- SQL 데이터베이스: Replit의 관리형 PostgreSQL 데이터베이스 서비스에 대해 알아보세요
- 배포: 데이터베이스 변경 사항에 따른 배포 방식을 이해하세요
- 앱 스토리지: 클라우드에서 파일과 에셋을 저장하는 방법을 알아보세요 (이전에는 Object Storage라고 불렸습니다)