2016-01-12 34 views
5

Przez ostatnie dwa dni próbowałem połączyć się ze zdalnym serwerem SQL systemu Windows bez widocznych sukcesów. Próbuję połączyć się z Pythona przy użyciu pakietu pyodbc.Jak połączyć się z systemem Windows SQL Server z Ubuntu

Starałem się śledzić wszystkie posty na blogu bez większych problemów. Po raz pierwszy poszedłem za that, który uważam za dobry wysiłek, ale kończy się zbyt niespójnym IMO.

Zainstalowałem menedżera unixODBC zgodnie z propozycją zamieszczoną w poście na blogu. Pobrałem dostępne pakiety RedHat z Windows i uruchamiać skrypty instalacyjne, ale za każdym razem staram się połączyć db dostaję

pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'SQL Server Native Client 10.0' : file not found (0) (SQLDriverConnect)") 

Czy istnieje sposób, aby osiągnąć w ciągu kilku godzin bez konieczności wyregulować okno na sam instaluję skrypty? Czy ktoś może przedstawić przegląd kroków, które należy podjąć i modułów, które należy zainstalować, aby ktoś mógł połączyć się z serwerem systemu Windows SQL z komputera z systemem Linux?

Obecnie używam Ubuntu 15.04.

Aktualizacja

Próbowałem też z instrukcjami podanymi here. Patrząc na szczegóły SQL db na platformie lazurowej wyraźnie stwierdza się, że sterownik powinien być SQL Server Native Client 10.0. Czy powinienem rozważyć obowiązkowe użycie tego sterownika lub czy mogę użyć np. FreeTDS, jak sugeruje to drugi blog?

Odpowiedz

3

sprawdź w swoim systemie plików plik o nazwie libsqlncli *. Jeśli znajdziesz to sprawdzić:

  • uprawnienia
  • rzędy raportowania „nie znaleziono” w wyjściu polecenia ldd zawartej przed tym pliku;
  • Jeśli wszystko wydaje się być ok Sprawdzić/ddd następujący wpis w pliku odncinst.ini:

    [SQL Server Native Client 1[0|1].0] Description=Microsoft SQL Server ODBC Driver V1.0 for Linux Driver=/opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1790.0 UsageCount=1