SQLAlchemy教程:第一个例子-1.创建异步引擎

创建异步引擎

语法

async_engine = create_async_engine(
    db_url,
    echo=True,
    pool_size=5,
    max_overflow=10,
)

解释

  • db_url:数据库链接,不同的数据库,链接也不同
  • echo:bool 类型,设置True:打印所有 SQL;生产环境务必关闭,会有性能损耗,泄露 SQL 参数。

连接池参数:

  • pool_size:常驻连接池保留的连接数量,默认值 5。程序空闲时,池中维持这么多条连接。并发不高保持 5‑10;高并发接口可上调到 10‑20;不要设置过大,MySQL 单连接占内存
  • max_overflow:当 pool_size 的连接全部被占用,允许额外临时创建的最大连接数。默认值 10。
    例:pool_size=5,max_overflow=10 → 最多同时 15 个数据库连接。

实现

from sqlalchemy.ext.asyncio import create_async_engine

# 数据库链接
DB_URL = "mysql+aiomysql://root:root@127.0.0.1:3306/fastapi_std?charset=utf8mb4"

async_engine = create_async_engine(
    DB_URL,
    echo=True,          # True打印执行SQL,调试打开;生产关闭
    pool_size=5,        # 连接池大小
    max_overflow=10,    # 最大连接数量
)

原文出处:/show_1GW3sCSL1Fce.html