Poniżej znajdują się kroki instalacji, konfiguracji i rozpoczęcia korzystania ze sterownika Microsoft SQL Server ODBC dla systemu Linux i korzystania z niego z poziomu PHP - zakłada się, że masz już dostępny SQL Server i skonfigurowany do akceptowania połączeń przez TCP/IP, a także, że masz pewną znajomość z Linux.First, SQL Server (i odpowiednia baza danych) musi być skonfigurowany do uwierzytelniania Windows i SQL Server. W przypadku zmiany wymaga to ponownego uruchomienia usługi SQL Server. Ponadto serwer musi mieć również włączone połączenia TCP/IP ze zdefiniowanym portem statycznym (będę używał domyślnego 1433), a zapora na hoście dla SQL Server musi zezwalać na połączenia do SQL Server na porcie statycznym.
Załaduj niezbędne moduły:
-
Uruchom następujący wiersz poleceń, aby usunąć poprzednie instalacje.
yum remove php httpd php-odbc php-pear.noarch php-pecl-apc php-xml php-xmlrpc php-tidy php-intl php-imap php-pecl-memcache glibc libuuid1 krb5 openssl gcc unixodbc
-
Aby zainstalować nowe pakiety, uruchom następujący wiersz poleceń (Instalujący użytkownik musi domyślnie mieć uprawnienia do zapisu w katalogu /opt.)
yum install php httpd php-odbc php-pear.noarch php-pecl-apc php-xml php-xmlrpc php-tidy php-intl php-imap php-pecl-memcache glibc libuuid1 krb5 openssl gcc unixodbc
-
Dodaj te dwie linie do /etc/httpd/conf/httpd.conf
SetEnv ODBCSYSINI /etc SetEnv ODBCINI /etc/odbc.ini
Załaduj unixODBC
-
Przejdź do http://www.unixodbc.org/ .
-
Kliknij link Pobierz (unixODBC-2.3.0), po lewej stronie.
-
Kliknij link Pobierz na następnej stronie i zapisz plik w folderze „~/Download”
-
Na komputerze z systemem Linux wykonaj następujące polecenie:
cd ~/Downloads/ tar xvzf unixODBC-2.3.0.tar.gz
-
Przejdź do katalogu unixODBC-2.3.0.
cd unixODBC-2.3.0/
-
W wierszu poleceń wpisz następujące polecenie:
CPPFLAGS="-DSIZEOF_LONG_INT=8"
-
W wierszu poleceń wpisz następujące polecenie:
export CPPFLAGS
-
W wierszu poleceń wpisz następujące polecenie:
./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --enable-gui=no --enable-drivers=no --enable-iconv --with-iconv-char-enc=UTF8 --with-iconv-ucode-enc=UTF16LE
-
W wierszu poleceń (zalogowany jako root) wpisz następujące polecenie
make
i naciśnij enter, a następnie
make install
i naciśnij Enter.
Zainstaluj sterownik Microsoft® ODBC 11
-
Uruchom następującą serię poleceń,
wget http://download.microsoft.com/download/B/C/D/BCDD264C-7517-4B7D-8159- C99FC5535680/RedHat6/msodbcsql-11.0.2270.0.tar.gz and press enter, and then tar xzvf msodbcsql-11.0.2270.0.tar.gz
i naciśnij enter, a następnie
cd msodbcsql-11.0.2270.0
i naciśnij enter, a następnie
./install.sh install --lib-dir=/usr/local/lib64 --accept-license odbcinst -q -d -n "SQL Server Native Client 11.0"
-
Teraz edytuj /etc/odbc.ini i dodaj sekcję podobną do tej (zmień [adres serwera] na adres IP serwera bazy danych):
[DSNname] Driver=SQL Server Native Client 11.0 Description=My Sample ODBC Database Connection Trace=Yes Server=[server address] Port=1433 Database=NSCDB_3
-
Zapisz go i wyjdź z edytora. W wierszu polecenia wpisz:
isql -v <DSN Name> <sql server authentication user name> <password>
-
Następnie wykonujemy trzy polecenia z powłoki. (może to zająć do 15 sekund każdy). Trzeci restartuje serwer WWW Apache.
setsebool -P httpd_can_network_connect on setsebool -P httpd_can_network_connect_db on /etc/init.d/httpd restart
jeśli instalacja się powiodła, powinieneś zobaczyć coś takiego:
+---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>