luc*_*umi 6 sqlalchemy python-2.7 vagrant amazon-redshift vagrantfile
我试图从我的python代码连接到redshift.我的点子安装:
psycopg2==2.6.1
redshift-sqlalchemy==0.4.1
SQLAlchemy==1.0.9
Run Code Online (Sandbox Code Playgroud)
我的虚拟机有:
libpq-dev
python-psycopg2
Run Code Online (Sandbox Code Playgroud)
但我还是得到了
engine = create_engine('redshift+psycopg2://{}:{}@{}'.format(username, password, url))
File "/opt/project/env/local/lib/python2.7/site-packages/sqlalchemy/engine/__init__.py", line 386, in create_engine
return strategy.create(*args, **kwargs)
File "/opt/project/env/local/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", line 51, in create
entrypoint = u._get_entrypoint()
File "/opt/project/env/local/lib/python2.7/site-packages/sqlalchemy/engine/url.py", line 131, in _get_entrypoint
cls = registry.load(name)
File "/opt/project/env/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 205, in load
(self.group, name))
NoSuchModuleError: Can't load plugin: sqlalchemy.dialects:redshift.psycopg2
Run Code Online (Sandbox Code Playgroud)
使用相同的配置,我可以从我的笔记本电脑(mac)运行,但在Linux上,我想有些软件包仍然缺失?任何建议将不胜感激,谢谢!
For*_*had 13
我遇到了同样的问题,波纹管分辨率顺利解决了它。
环境 :
蟒蛇 3.7
康达 4.6.14
依赖:
须藤 apt-get 安装 python-pip
须藤 apt-get 安装 libpq-dev
pip install --user psycopg2
pip install --user sqlalchemy
pip install --user sqlalchemy-redshift
连接字符串:
connection_string = sa_url.URL(
drivername='postgresql+psycopg2',
username='admin',
password='admin',
host='redshiftone.********.us-west-2.redshift.amazonaws.com',
port='5439',
database='redshiftone')
Run Code Online (Sandbox Code Playgroud)
我发现一些教程将驱动程序列为:
postgres+psycopg2://...使用它时,我收到了该错误:
NoSuchModuleError:无法加载插件:sqlalchemy.dialects:redshift.psycopg2
只需将其更改为:
postgresql+psycopg2://
^^
Run Code Online (Sandbox Code Playgroud)
立即修复。
获得 NoSuchModule 异常的一个笨拙的方法是数据库连接字符串的格式错误。就我而言,我在更改时收到此错误
DB_URI = 'postgresql://...'
Run Code Online (Sandbox Code Playgroud)
到
DB_URI = 'pg8000://...'
Run Code Online (Sandbox Code Playgroud)
但应该是:
DB_URI = 'postgresql+pg8000://
Run Code Online (Sandbox Code Playgroud)
我遇到了同样的问题,当我删除package.json__pycache__中的目录时解决了它redshift_sqlalchemy。
转到你的站点包,在我的例子中是在我的 virtualenv 中。
所以cdvirtualenv, cd lib/python3.5/site-packages/redshift_sqlalchemy最后rm __pycache__。
| 归档时间: |
|
| 查看次数: |
10392 次 |
| 最近记录: |