linux - 使用 Python AWS Lambda 层连接到 MS SQL Server 时出现问题 - 适用于 SQL Server 的 ODBC 驱动程序 13

标签 linux aws-lambda aws-lambda-layers

我正在设置 AWS lambda 函数以使用 pyodbc 连接到 MS SQL Server 数据库以从表中提取记录。

我收到一条错误消息

('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 13 for SQL Server' : file not found (0) (SQLDriverConnect))

我已经在 linux EC2 实例上构建了一个部署包)使用以下帖子中的详细过程: https://gist.github.com/carlochess/658a98589709f46dbb3d20502e48556b

我已经广泛阅读了这方面的内容,并更改了 odbcinst.ini 文件中的路径以匹配 lambda 层的目录结构,但没有成功。

我还在目录中引用了驱动程序文件 (libmsodbcsql-13.1.so.9.2) 的位置。

错误消息略有变化,指出它无法在特定位置找到驱动程序 efile(即使该文件确实存在)

最佳答案

如果您在层中使用 pyodbc,lambda 将在/opt 而不是/var/task 上查找 odbc 驱动程序。这可能就是您收到文件未找到错误的原因。

查看 how to get pyodbc as a lambda layer 上的以下链接

关于linux - 使用 Python AWS Lambda 层连接到 MS SQL Server 时出现问题 - 适用于 SQL Server 的 ODBC 驱动程序 13,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56290921/

相关文章:

php可执行文件未运行

linux - 以 12 小时的间隔运行 cron

amazon-dynamodb - 设置 AWS DynamoDB 表的验证规则

video - 尝试在 Lambda 上使用 FFMpeg 层对视频进行转码

python - 将标准输出重定向到文件显示错误内容

aws-lambda - Terraform 中的可选 CloudFront Lambda 函数关联

amazon-dynamodb - 任务在 3.00 秒后超时 - 使用 NodeJS 的 Lambda 应用程序

python - AWS Lambda | Azure Python 库集成

linux - screen session 中的窗口标题未保存