2026-07-21 16:11:23 +08:00
|
|
|
import os
|
2026-07-23 13:18:39 +08:00
|
|
|
|
2026-07-21 16:11:23 +08:00
|
|
|
from dotenv import load_dotenv
|
|
|
|
|
from sqlalchemy import create_engine
|
|
|
|
|
from sqlalchemy.engine import URL
|
|
|
|
|
from sqlalchemy.orm import DeclarativeBase
|
|
|
|
|
|
|
|
|
|
load_dotenv()
|
|
|
|
|
|
2026-07-27 13:09:41 +08:00
|
|
|
|
2026-07-21 16:11:23 +08:00
|
|
|
class Base(DeclarativeBase):
|
|
|
|
|
pass
|
|
|
|
|
|
2026-07-27 13:09:41 +08:00
|
|
|
|
2026-07-21 16:11:23 +08:00
|
|
|
database_url = URL.create(
|
2026-07-27 13:09:41 +08:00
|
|
|
drivername="mysql+pymysql",
|
|
|
|
|
username=os.getenv("MYSQL_USER"),
|
|
|
|
|
password=os.getenv("MYSQL_PASSWORD"),
|
|
|
|
|
host=os.getenv("MYSQL_HOST"),
|
|
|
|
|
port=int(os.getenv("MYSQL_PORT")),
|
|
|
|
|
database=os.getenv("MYSQL_DATABASE"),
|
|
|
|
|
)
|
2026-07-21 16:11:23 +08:00
|
|
|
|
|
|
|
|
engine = create_engine(database_url, pool_pre_ping=True)
|