2016-11-02 8 views
1

Я пытаюсь подключиться к серверу netezza. Это код, у меня естьОшибка подключения с использованием pyodbc для netezza

import pyodbc 

conn = pyodbc.connect("DRIVER={NetezzaSQL};SERVER=<Server name>;PORT=<no>;DATABASE=<dbname>;UID=user_id;PWD=password;DSN=NZSQL") 

print("Connection complete") 

Мой odbc.ini файл:

[NZSQL] 
Driver32=C:\windows\SysWOW64\nsqlodbc.dll 
[ASTEST] 
Driver32=C:\windows\SysWOW64\cwbodbc.dll 
[ODBC 32 bit Data Sources] 
NZSQL=NetezzaSQL (32 bit) 
ASTEST=iSeries Access ODBC Driver (32 bit) 
ASPROD=iSeries Access ODBC Driver (32 bit) 
[ASPROD] 
Driver32=C:\windows\SysWOW64\cwbodbc.dll 

Мой odbcinst.ini файл:

[IBM DB2 ODBC DRIVER - TACOM32 (32 bit)] 
Driver=C:\PROGRA~2\QUESTS~1\TOADDA~1.2\SQLLIB\BIN\DB2CLI.DLL 
Setup=C:\PROGRA~2\QUESTS~1\TOADDA~1.2\SQLLIB\BIN\DB2ODBC.DLL 
32Bit=1 
[ODBC 32 bit Drivers] 
IBM DB2 ODBC DRIVER - TACOM32 (32 bit)=Installed 
MySQL ODBC 5.1 Driver (ToadDataPoint3.8) (32 bit)=Installed 
[MySQL ODBC 5.1 Driver (ToadDataPoint3.8) (32 bit)] 
Driver=C:\Program Files (x86)\Dell\Toad Data Point 3.8\Plugins\MySQL\ODBC\lib\myodbc5.dll 
Setup=C:\Program Files (x86)\Dell\Toad Data Point 3.8\Plugins\MySQL\ODBC\lib\myodbc5S.dll 

Но это дает мне следующую ошибку:

pyodbc.Error: ('08001', '[08001] Client unable to establish connection (12) (SQLDriverConnect)') 

Я не понимаю эту ошибку. Является ли это ошибкой netezza или неверно это утверждение о подключении? Заранее спасибо! :)

+0

Вы сделали запись для 'NetezzzaSQL' в файле' odbc.ini'? –

+0

Нет, нет. Что вы имеете в виду, сделав запись? –

+0

Когда вы упоминаете 'DRIVER = {NetezzaSQL}', он считывает конфигурацию из записи из файла 'odbc.ini' для измененного драйвера. Проверьте это: https://www.ibm.com/support/knowledgecenter/SSZJPZ_8.7.0/com.ibm.swg.im.iis.conn.netezza.use.doc/topics/configuring_nzodbc_linuxfile.html –

ответ

0

Оказывается, это были проблемы с сервером. Когда python пытался подключиться к серверу, у него была проблема. Тот же код работал нормально на следующий день. Он сказал, что клиент не может установить соединение.