Pomoc QNAP i konektor MSSQL

Arkhan

Nowy użytkownik
Noobie
19 Sierpień 2022
1
0
1
46
QNAP
null
Ethernet
null
Jak skonfigurować połączenie QNAPa z bazą danych MSSQL:
1. Pobieramy i instalujemy Entware - https://qnapclub.eu/pl/qpkg/556
2. Logujemy się przez ssh
3. Pobieramy UnixODBC: wget https://github.com/lurcher/unixODBC/releases/download/2.3.11/unixODBC-2.3.11.tar.gz
4. Rozpakowujemy i instalujemy. W katalogu /opt/etc powinny znaleźć się dwa pliki: odbc.ini i odbcinst.ini, a w katalogu /opt/lib powinna być biblioteka libodbc.so
4. Pobieramy sterownik do MSSQL (ja korzystałem z freetds) - wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.3.13.tar.gz
przy próbie kompilacji w moim przypadku wyrzucał brak bibliotek readline więc:
5. Pobieramy readline: wget https://fossies.org/linux/misc/readline-8.2-rc2.tar.gz/
6. Rozpakowujemy pakiet readline i kopiujemy jego zawartość do katalogu z plikami instalacyjnymi freetds - podkatalog readline
7. Kompilujemy freetds: ./configure --prefix=/opt --with-unixodbc=/opt
8. Tworzymy skrypt instalacyjny: make (w razie potrzeb doinstalowujemy niezbędne pakiety przez opkg - make, gcc itp...)
9. Instalujemy freeTDS: make install
10. Konfigurujemy połączenia w plikach ini:
odbcinst.ini
[FreeTDS]
Description = MSSQL
Driver = /opt/lib/libtdsodbc.so

odbc.ini
[mssql]
Description = MSSQL
Driver = FreeTDS
Database = BazaDanych
Server = x.x.x.x
Port = 1433
TDSVersion = 7.2 (zgodnie z opisem tutaj https://www.freetds.org/userguide/ChoosingTdsProtocol.html)

11. Test połączenia:
isql mssql użytkownik hasło

isql mssql użytkownik hasło <sql.txt >> sql.out
Działa wywoływane w cronie wypisując rezultaty zapytania wpisanego w plik sql.txt do pliku sql.out
 

Użytkownicy znaleźli tą stronę używając tych słów:

  1. driver PDO
  2. entware