Lambda 上的 MySQL 连接器产生无法导入模块“myapp”:没有名为“mysql”的模块

Posted

技术标签:

【中文标题】Lambda 上的 MySQL 连接器产生无法导入模块“myapp”:没有名为“mysql”的模块【英文标题】:MySQL Connector on Lambda yields Unable to import module 'myapp': No module named 'mysql' 【发布时间】:2018-10-03 19:01:08 【问题描述】:

在我的本地机器和 AWS Ubuntu 机器上运行的 Python 代码使用 mysql 连接器:

import mysql.connector

在我的本地 Mac 上,我从https://dev.mysql.com/downloads/connector/python/ 下载的磁盘映像安装 在 AWS 上的 Ubuntu 机器上,我通过以下方式对其进行了 pip'ed:Python3 pip –m mysql-connector

所以,既然我想将 Python 函数放入 AWS Lambda 函数中,那么 函数的 TEST 正在产生:

无法导入模块“myapp”:没有名为“mysql”的模块

我不知道我是否想转到https://docs.aws.amazon.com/lambda/latest/dg/vpc-rds-deployment-pkg.html 上记录的 pymsql

我真的只想将我的代码移植到 Lambda,而不必进行任何更改来访问我的 RDS MySQL 实例。 请一步一步来……

【问题讨论】:

【参考方案1】:

必须将 MySQL 的库添加到项目目录中,然后压缩到包含处理程序代码(在我的情况下为 Python)的同一存档文件中。

【讨论】:

以上是关于Lambda 上的 MySQL 连接器产生无法导入模块“myapp”:没有名为“mysql”的模块的主要内容,如果未能解决你的问题,请参考以下文章

Paramiko连接在Lambda内失败

Lambda - 将 CSV 从 S3 导入 RDS MySQL

AWS Lambda Python 3.7:无法导入模块'lambda_function':缺少必需的依赖项['numpy']

用robotframework连接mysql数据库产生乱码怎么解决

aws lambda 无法导入模块“lambda_function”:没有名为“requests”的模块

Lambda 函数因无法导入模块“索引”而失败