트러블슈팅: Gmail OAuth 토큰 테이블 구조 개선 및 데이터 마이그레이션 추가
- gmail_tokens 테이블 컬럼 추가 (access_token, refresh_token, expires_at 등) - 기존 token_data JSONB에서 새 컬럼으로 데이터 마이그레이션 - token_data NOT NULL 제약 제거 - OAuth config 저장 로직 추가 - 테스트 사용자 상태 및 만료 시간 업데이트
This commit is contained in:
parent
1c97b904af
commit
2927802a9a
@ -134,7 +134,28 @@ ALTER TABLE gmail_tokens ALTER COLUMN token_data DROP NOT NULL;
|
||||
|
||||
### 4.4 DB 연결 설정
|
||||
**문제**: `host.docker.internal` vs 실제 IP
|
||||
**해결**: Docker 환경에서는 `host.docker.internal` 사용
|
||||
**해결**: 환경변수 기반으로 동적 설정
|
||||
```python
|
||||
database_url = os.getenv("DATABASE_URL", "postgresql://robeings:robeings@192.168.219.45:5432/main_db")
|
||||
```
|
||||
|
||||
### 4.5 Gmail 토큰 테이블 구조 개선
|
||||
**문제**: `access_token` 컬럼 누락으로 "column does not exist" 에러
|
||||
**해결**: 필요한 컬럼들 추가
|
||||
```sql
|
||||
ALTER TABLE gmail_tokens
|
||||
ADD COLUMN IF NOT EXISTS access_token TEXT,
|
||||
ADD COLUMN IF NOT EXISTS refresh_token TEXT,
|
||||
ADD COLUMN IF NOT EXISTS token_type VARCHAR DEFAULT 'Bearer',
|
||||
ADD COLUMN IF NOT EXISTS expires_at FLOAT;
|
||||
|
||||
-- 기존 token_data에서 새 컬럼으로 데이터 마이그레이션
|
||||
UPDATE gmail_tokens
|
||||
SET
|
||||
access_token = token_data->>'access_token',
|
||||
refresh_token = token_data->>'refresh_token'
|
||||
WHERE token_data IS NOT NULL;
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user