5

मैं अपने पायथन कोड से Redshift से कनेक्ट करने का प्रयास कर रहा हूं। मेरी पिप स्थापित:NoSuchModuleError: प्लगइन लोड नहीं कर सकता: sqlalchemy.dialects: redshift.psycopg2

psycopg2==2.6.1 
redshift-sqlalchemy==0.4.1 
SQLAlchemy==1.0.9 

और मेरे आभासी मशीन है:

libpq-dev 
python-psycopg2 

लेकिन मैं अभी भी एक ही config के साथ

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 

हो रही है, मैं अपने लैपटॉप से ​​चलाने के लिए सक्षम हूँ (मैक), लेकिन लिनक्स पर, मुझे लगता है कि कुछ पैकेज अभी भी गायब हैं? किसी भी सुझाव की सराहना की जाएगी, धन्यवाद!

+0

क्षमा करें, पिछले पोस्ट वास्तव में काम नहीं करता है: मेरे मामले में मैं यह त्रुटि जब मैं

DB_URI = 'pg8000://...' 

को

DB_URI = 'postgresql://...' 

बदल लेकिन होना चाहिए मिला है। –

+0

redshift.psycopg2 के साथ संघर्ष करने के बजाय और सीधे पोस्टग्रेस्क्ल + psycopg2 का उपयोग करें, यह ठीक काम करता है :) –

+0

इस समस्या का सही समाधान क्या है? मुझे redshift से कनेक्ट करने की आवश्यकता है और postgresql + psycopg2 काम नहीं करता है। – Sarang

उत्तर

0

नीचे दिए गए लिंक एसक्यूएल कीमिया निर्भरता के बिना psycopg2 लाइब्रेरी का उपयोग कर

http://sobhan06k.blogspot.in/2014/11/reach-redshift-using-python-library.html

+0

धन्यवाद मुकुंद, लेकिन ऐसा लगता है कि आपके द्वारा भेजा गया लिंक मौजूद नहीं है। और मेरी परियोजना sqlalchemy पर निर्भर करती है, हम इसका उपयोग उन पैकेजों को लिनक्स पर काम करने के तरीके को समझने के लिए बेहतर तरीके से उपयोग करते हैं। मेरा मानना ​​है कि संशोधित करने के लिए इतना कुछ नहीं है, लेकिन केवल यह पता लगाने की आवश्यकता है कि :( –

+0

लिंक गायब था। अंत में एचटीएमएल, अब देखें – Mukund

0

मैं एक ही समस्या थी और मैं इसे हल जब मैं redshift_sqlalchemy पैकेज में __pycache__ निर्देशिका हटाया Pythong के माध्यम से लाल विचलन से कनेक्ट करने में मदद करता है ।

मेरे मामले में साइट-पैकेज मेरे वर्चुअलएन्व में है।

तो cdvirtualenv और cd lib/python3.5/site-packages/redshift_sqlalchemy अंत में rm __pycache__

+0

हाय, __pycache__ निर्देशिका को हटाने का प्रयास किया, लेकिन फिर भी वही त्रुटि देता है। प्लगइन लोड नहीं कर सकता: sqlalchemy.dialects: redshift.psycopg2 – Sarang

+0

क्या आपने सेवाओं को पुनरारंभ किया है? कृपया, मुझे निम्नलिखित चरणों का पालन करें। – paridin

+0

@ paridin जो सेवाओं को पुनरारंभ करने के लिए? अभी के लिए, मैंने इसे बाहर निकालकर हल किया आभासी वातावरण और इसे मुख्य पायथन पर्यावरण में चला रहा है। यह ठीक है। – Sarang

0

NoSuchModule अपवाद प्राप्त करने के लिए एक हड्डी का रास्ता यह है कि डीबी कनेक्शन स्ट्रिंग गलत प्रारूप में है।

DB_URI = 'postgresql+pg8000:// 
संबंधित मुद्दे