diff --git a/conf/db.py b/conf/db.py index a243d02..d7033fe 100644 --- a/conf/db.py +++ b/conf/db.py @@ -1,10 +1,13 @@ -# db.py - +import os from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker import yaml -def load_config(path='conf/config.yaml'): +# db.py 파일 위치 기준 상위 디렉토리 (프로젝트 루트) +BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) +CONFIG_PATH = os.path.join(BASE_DIR, 'conf', 'config.yaml') + +def load_config(path=CONFIG_PATH): with open(path, 'r', encoding='utf-8') as f: return yaml.safe_load(f) @@ -13,7 +16,7 @@ db_cfg = config['database'] db_url = f"mysql+pymysql://{db_cfg['user']}:{db_cfg['password']}@{db_cfg['host']}/{db_cfg['name']}?charset=utf8mb4" -# MySQL 연결이 끊겼을 때 자동 재시도 +# MySQL 연결이 끊겼을 때 자동 재시도 옵션 포함 engine = create_engine(db_url, pool_pre_ping=True) Session = sessionmaker(bind=engine)