mirror of
https://github.com/hwanny1128/HGZero.git
synced 2025-12-06 10:16:24 +00:00
85 lines
2.4 KiB
Python
85 lines
2.4 KiB
Python
"""
|
|
RAG Minutes 테이블 초기화 스크립트
|
|
"""
|
|
import psycopg2
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
# 프로젝트 루트를 Python 경로에 추가
|
|
sys.path.insert(0, str(Path(__file__).parent.parent))
|
|
|
|
from src.utils.config import load_config, get_database_url
|
|
|
|
|
|
def init_rag_minutes_table(db_url: str, migration_file: str):
|
|
"""
|
|
RAG Minutes 테이블 초기화
|
|
|
|
Args:
|
|
db_url: 데이터베이스 연결 URL
|
|
migration_file: 마이그레이션 SQL 파일 경로
|
|
"""
|
|
try:
|
|
print(f"데이터베이스 연결 중...")
|
|
conn = psycopg2.connect(db_url)
|
|
cur = conn.cursor()
|
|
|
|
print(f"마이그레이션 파일 읽기: {migration_file}")
|
|
with open(migration_file, 'r', encoding='utf-8') as f:
|
|
sql = f.read()
|
|
|
|
print("마이그레이션 실행 중...")
|
|
cur.execute(sql)
|
|
conn.commit()
|
|
|
|
print("✓ RAG Minutes 테이블 초기화 완료")
|
|
|
|
# 테이블 확인
|
|
cur.execute("""
|
|
SELECT COUNT(*)
|
|
FROM information_schema.tables
|
|
WHERE table_name = 'rag_minutes'
|
|
""")
|
|
count = cur.fetchone()[0]
|
|
|
|
if count > 0:
|
|
print(f"✓ rag_minutes 테이블이 생성되었습니다")
|
|
|
|
# 인덱스 확인
|
|
cur.execute("""
|
|
SELECT indexname
|
|
FROM pg_indexes
|
|
WHERE tablename = 'rag_minutes'
|
|
""")
|
|
indexes = cur.fetchall()
|
|
print(f"✓ 생성된 인덱스: {len(indexes)}개")
|
|
for idx in indexes:
|
|
print(f" - {idx[0]}")
|
|
else:
|
|
print("✗ 테이블 생성 실패")
|
|
|
|
cur.close()
|
|
conn.close()
|
|
|
|
except Exception as e:
|
|
print(f"✗ 에러 발생: {str(e)}")
|
|
raise
|
|
|
|
|
|
if __name__ == "__main__":
|
|
# 설정 로드
|
|
config_path = Path(__file__).parent.parent / "config.yaml"
|
|
config = load_config(str(config_path))
|
|
db_url = get_database_url(config)
|
|
db_url = "postgresql://hgzerouser:Hi5Jessica!@4.217.133.186:5432/ragdb"
|
|
|
|
# 마이그레이션 파일 경로
|
|
migration_file = Path(__file__).parent.parent / "migrations" / "V1__create_rag_minutes_table.sql"
|
|
|
|
if not migration_file.exists():
|
|
print(f"✗ 마이그레이션 파일을 찾을 수 없습니다: {migration_file}")
|
|
sys.exit(1)
|
|
|
|
# 초기화 실행
|
|
init_rag_minutes_table(db_url, str(migration_file))
|