You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

尝试让SQL与Jupyter Notebook连接时遇MetaData初始化错误求助

问题解决:Jupyter Notebook连接MySQL报错MetaData.__init__() got an unexpected keyword argument 'bind'

问题描述

在Jupyter Notebook中使用%sql魔法命令尝试连接MySQL数据库,执行语句:

%sql mysql+pymysql://root:Fena.3250@localhost:3306/united_nations

出现错误:

MetaData.init() got an unexpected keyword argument 'bind'

同时提示需要SQLAlchemy格式的连接信息,现有连接为空,目标是成功建立数据库连接。

报错原因

这个错误是SQLAlchemy版本与ipython-sql版本不兼容导致的:

  • SQLAlchemy 2.0及以上版本移除了MetaData类的bind参数
  • 旧版本的ipython-sql仍在调用这个已被移除的参数,从而触发报错

解决步骤

方案1:降低SQLAlchemy版本到1.x兼容版

在终端执行以下命令:

pip install sqlalchemy==1.4.49

(版本号可按需选择1.x系列的稳定版本)

方案2:升级ipython-sql到最新兼容版本

在终端执行以下命令:

pip install --upgrade ipython-sql

验证连接

重新启动Jupyter Notebook后,再次执行连接命令:

%sql mysql+pymysql://root:Fena.3250@localhost:3306/united_nations

若返回连接成功的提示,说明问题已解决。

内容的提问来源于stack exchange,提问作者fenadis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 05:32:22