在AWS Lambda Python部署中包括ODBC库
我已经为AWS Lambda创建了一个部署包,它是用Python 2.7编写的。在Python脚本中,我使用PyODBC连接到外部数据源,使用我在本地计算机上配置的用户DNS。尝试部署包时,出现以下错误:在AWS Lambda Python部署中包括ODBC库,python,amazon-web-services,odbc,aws-lambda,pypyodbc,Python,Amazon Web Services,Odbc,Aws Lambda,Pypyodbc,我已经为AWS Lambda创建了一个部署包,它是用Python 2.7编写的。在Python脚本中,我使用PyODBC连接到外部数据源,使用我在本地计算机上配置的用户DNS。尝试部署包时,出现以下错误: module initialization error: 'ODBC Library is not found. Is LD_LIBRARY_PATH set?' 我在虚拟环境中使用pip创建了包project dir。包装安排如下: /project-dir __init__.py
module initialization error: 'ODBC Library is not found. Is LD_LIBRARY_PATH set?'
我在虚拟环境中使用pip创建了包project dir
。包装安排如下:
/project-dir
__init__.py
PythonFileIWantToUse.py
pypyodbc.py
pypyodbc.pyc
/boto
/pypyodbc-1.3.3.dist-info
/other modules, etc.
我试着加上
#将Lambda指向所需的OBDC目录
os.environ['LD_LIBRARY_PATH']=os.environ['LD_LIBRARY_PATH']+':'+'/var/task/'
在lambda_handler函数上方添加到MainPythonIWantToUse.py
,并在根目录中包含odbc32.lib,但我得到了相同的错误
知道我需要做什么吗?我在Windows中配置了一个本地ODBC,但我不确定Lambda的Unix环境要将哪些文件放在哪里才能找到它们
编辑:我也尝试过在根目录中包含UnixODBC的元素,但这并没有改变结果。只是想知道你是否能做到这一点……我也被卡住了。我相信你需要使用Linux ODBC驱动程序:请看这里:嘿,你应该检查一下