4

我为 AWS Lambda 创建了一个部署包,用 Python 2.7 编写。在 Python 脚本中,我使用我在本地计算机上配置的用户 DNS 使用 pypyodbc 连接到外部数据源。当我尝试部署包时,出现以下错误:

module initialization error: 'ODBC Library is not found. Is LD_LIBRARY_PATH set?'

project-dir我使用 pip 在虚拟环境中创建了包。包裹安排如下:

/project-dir
  __init__.py
  PythonFileIWantToUse.py
  pypyodbc.py
  pypyodbc.pyc
  /boto
  /pypyodbc-1.3.3.dist-info
  /other modules, etc.

我试过添加

#Point Lambda to Required OBDC Directory os.environ['LD_LIBRARY_PATH'] = os.environ['LD_LIBRARY_PATH'] + ':' + '/var/task/'

MainPythonIWantToUse.py上面的 lambda_handler 函数,并在根目录中包含 odbc32.lib,但我得到了同样的错误。

知道我需要做什么吗?我在 Windows 中配置了本地 ODBC,但我不确定将哪些文件放在 Lambda 的 Unix 环境中可以找到它们的位置。

编辑:我也尝试在根目录中包含 UnixODBC 的元素,但这不会改变结果。

4

0 回答 0