首页 > 解决方案 > cx_Oracle 和 Lambda 层错误 - aws lambda 找不到 64 位 oracle 客户端库

问题描述

我使用 cx_oracle 和 oracle-instantclient 创建了 lambda 层。创建了 lambda 层并能够导入 cx_oracle,但它总是给我一个错误,例如缺少 64 位 oracle 客户端库。下面是我的文件夹结构

在此处输入图像描述

标签: pythonamazon-web-servicesaws-lambdacx-oracleaws-lambda-layers

解决方案


这个问题可能有几个根本原因。

  1. 检查 AWS 控制台中的文件结构。您还可以尝试通过列出您使用的层中的文件来调试 lambda。尝试使用-在层中包含库依赖 项来检查路径的正确性。
  2. 对于 cx_Oracle,您还需要设置一个LD_LIBRARY_PATH指向库所在位置的 env var。您可以在 AWS 控制台的 lambda 页面上更新它。由于该层位于/opt文件夹中,请提供安装带有库的模块的路径。

推荐阅读