如何修复 SQLAlchemy Can't load plugin: sqlalchemy.dialects:cockroachdb

问题

使用 SQLAlchemy 连接到 CockroachDB 时,使用如 cockroachdb+psycopg2://root@localhost:26257/defaultdb 的数据库 URL,你遇到以下错误:

sqlalchemy_cockroachdb_error.txt
 File "/home/uli/.local/lib/python3.12/site-packages/sqlalchemy/util/deprecations.py", line 281, in warned
    return fn(*args, **kwargs)  # type: ignore[no-any-return]
           ^^^^^^^^^^^^^^^^^^^
  File "/home/uli/.local/lib/python3.12/site-packages/sqlalchemy/engine/create.py", line 550, in create_engine
    entrypoint = u._get_entrypoint()
                 ^^^^^^^^^^^^^^^^^^^
  File "/home/uli/.local/lib/python3.12/site-packages/sqlalchemy/engine/url.py", line 758, in _get_entrypoint
    cls = registry.load(name)
          ^^^^^^^^^^^^^^^^^^^
  File "/home/uli/.local/lib/python3.12/site-packages/sqlalchemy/util/langhelpers.py", line 375, in load
    raise exc.NoSuchModuleError(
sqlalchemy.exc.NoSuchModuleError: Can't load plugin: sqlalchemy.dialects:cockroachdb

解决方案

你未安装 sqlalchemy-cockroachdb 包。

要修复此问题,运行:

install_sqlalchemy_cockroachdb.sh
pip install sqlalchemy-cockroachdb

如果你有 requirements.txt 文件,也将其添加到其中。


Check out similar posts by category: Databases, CockroachDB