Можно ли использовать драйвер Netezza ODBC в Ubuntu?

Драйверы Netezza ODBC официально поддерживаются SUSE и RedHat. Я пытаюсь заставить драйвер работать на Ubuntu 14.04.

Я тестировал соединение через:

sudo isql -v NZSQL

Который изначально вернул:

[unixODBC]Error occurred while loading translation library

Я попытался отладить, запустив:

sudo strace isql -v NZSQL

Это показало, что isql искал несуществующий файл libc.mo. Я смог решить эту проблему, установив локаль en_AU и создав несколько символических ссылок на этот файл libc.mo.

Теперь isql дает сбой из-за тайм-аута связи.

В настоящее время

sudo strace isql -v NZSQL

Зависает на пару минут на

connect(3, {sa_family=AF_INET, sin_port=htons(5480), sin_addr=inet_addr("SERVER-IP-HERE")}, 16) = -1 EINPROGRESS (Operation now in progress)
poll([{fd=3, events=POLLOUT}], 1, 4294967295) = 1 ([{fd=3, revents=POLLOUT|POLLERR|POLLHUP}])

И затем терпит неудачу с

sendto(3, "\0\0\0\10\0\1\0\3", 8, MSG_NOSIGNAL, NULL, 0) = -1 ETIMEDOUT (Connection timed out)
sendto(3, "X", 1, MSG_NOSIGNAL, NULL, 0) = -1 EPIPE (Broken pipe)

Это дурацкая затея? Кто-нибудь успешно использовал драйверы Netezza ODBC в Ubuntu? Любые предложения о том, как я могу решить эту проблему?


person NAD    schedule 12.03.2015    source источник


Ответы (1)


Короткий ответ: да. В настоящее время я использую драйвер Netezza ODBC в Ubuntu 14.04.

Вам может потребоваться создать символические ссылки на файлы перевода (например, на английский язык), как я упоминал в OP здесь:

I tried to debug by running:
sudo strace isql -v NZSQL
This showed that isql was searching for a non-existent libc.mo file. I was able to resolve this by setting locale to en_AU and creating some symlinks to that libc.mo file.

Описанный выше тайм-аут произошел из-за несвязанных проблем с брандмауэром — сервер Netezza отказывался подключаться с моего IP-адреса, что не имело никакого отношения к драйверу.

person NAD    schedule 06.04.2015