Microsoft SQL Server 2017 był dostępny do pełnego użytku na RHEL 7 od października 2017 roku, a podczas pracy nad wersją beta RHEL 8, Red Hat ściśle współpracował z firmą Microsoft, aby poprawić wydajność oraz zwiększyć wsparcie dla większej liczby języków programowania i aplikacji, a także zaoferować programistom szerszy wybór dostępnych narzędzi do tworzenia ich kolejnych aplikacji.

Najlepszym sposobem na zrozumienie wprowadzonych zmian i ich wpływu na twoją pracę jest przetestowanie ich w praktyce, ale RHEL 8 wciąż znajduje się w wersji beta, a Microsoft SQL Server 2017 nie jest wspierany do użytku w aplikacjach produkcyjnych. Co więc robić?
Jeśli chcesz przetestować SQL Server na wersji beta RHEL 8, ten post pomoże Ci go uruchomić, ale nie powinieneś go używać w środowisku produkcyjnym, dopóki wersja Red Hat Enterprise Linux 8 nie stanie się publicznie dostępna, a Microsoft nie dostarczy swojego oficjalnie wspieranego pakietu instalacyjnego.
Jednym z głównych zadań Red Hat Enterprise Linux jest stworzenie stabilnego, . W tym celu w RHEL wprowadzono kompatybilność aplikacji na poziomie API i interfejsów jądra. Kiedy przechodzimy do nowego dużego wydania, zazwyczaj istnieją specjalne różnice w nazwach pakietów, nowych wersjach bibliotek i narzędzi, które mogą powodować trudności przy uruchamianiu już istniejących aplikacji stworzonych dla poprzedniej wersji. Dostawcy oprogramowania mogą, postępując zgodnie z zaleceniami Red Hat, tworzyć pliki wykonywalne w Red Hat Enterprise Linux 7, które będą działać w Red Hat Enterprise Linux 8, ale praca z pakietami to zupełnie inna sprawa. Pakiet oprogramowania stworzony dla Red Hat Enterprise Linux 7 nie będzie wspierany w Red Hat Enterprise Linux 8.
Serwer SQL Server 2017 na Red Hat Enterprise Linux 7 używa python2 oraz OpenSSL 1.0. Następujące kroki pozwolą uzyskać środowisko robocze, które jest zgodne z tymi dwoma komponentami, które już przeszły migrację na nowsze wersje w RHEL 8 Beta. Wprowadzenie starszych wersji zostało zrealizowane przez Red Hat specjalnie w celu zachowania zgodności wstecznej.
sudo yum install python2
sudo yum install compat-openssl10
Teraz musimy zrozumieć domyślne ustawienia python w tym systemie. , ale domyślnie system nie zawiera /usr/bin/python. Musimy ustawić interpreter python2 jako domyślny, aby SQL Server 2017 mógł zobaczyć /usr/bin/python tam, gdzie się go spodziewa. W tym celu należy wykonać następujące polecenie:
sudo alternatives --config python
Zostaniesz poproszony o wybór wersji Pythona, po czym zostanie utworzony symlink, który będzie zachowany także po aktualizacji systemu.
Istnieją trzy różne pliki wykonywalne do pracy z python:
Selection Command
———————————————————————-
* 1 /usr/libexec/no-python
+ 2 /usr/bin/python2
3 /usr/bin/python3
Naciśnij Enter, aby zachować bieżący wybór[+], lub wpisz numer wyboru:
Tutaj musisz wybrać drugi wariant, po czym zostanie utworzony symlink z /usr/bin/python2 do /usr/bin/python.
Teraz można kontynuować konfigurację systemu do pracy z repozytorium oprogramowania Microsoft SQL Server 2017 za pomocą polecenia curl:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
Następnie należy pobrać pliki instalacyjne SQL Server 2017 za pomocą nowej funkcji pobierania w yum. Należy to zrobić w ten sposób, aby instalacja mogła być wykonana bez konieczności rozwiązywania zależności:
sudo yum download mssql-server
Teraz zainstalujemy serwer bez rozwiązywania zależności za pomocą polecenia rpm:
sudo rpm -Uvh --nodeps mssql-server*rpm
Po tym można kontynuować typową instalację SQL Server, jak opisano w poradniku Microsoftu 'Szybki start: instalacja SQL Server i tworzenie bazy danych w Red Hat' od kroku nr 3:
3. Po zakończeniu instalacji pakietu wykonaj polecenie mssql-conf setup i podążaj za wyświetlanymi wskazówkami, aby ustawić hasło administratora systemu (SA) oraz wybrać swoją wersję.
sudo /opt/mssql/bin/mssql-conf setup
Po zakończeniu instalacji można sprawdzić wersję zainstalowanego serwera SQL za pomocą polecenia:
# yum list —installed | grep mssql-server
Obsługuje kontenery
Z wydaniem SQL Server 2019 instalacja obiecuje stać się jeszcze prostsza, ponieważ ta wersja, jak oczekiwano, będzie dostępna w RHEL w postaci kontenera. Serwer SQL Server 2019 jest już dostępny w wersji beta. Aby go wypróbować w RHEL 8 Beta wystarczą tylko trzy kroki:
Po pierwsze, utwórzmy katalog bazy danych, w którym będą przechowywane wszystkie nasze dane SQL. W tym przykładzie użyjemy katalogu /var/mssql.
sudo mkdir /var/mssql
sudo chmod 755 /var/mssql
Teraz należy pobrać kontener z SQL 2019 Beta z repozytorium Microsoft Container Repository za pomocą polecenia:
sudo podman pull mcr.microsoft.com/mssql/rhel/server:2019-CTP2.2
Na koniec należy skonfigurować serwer SQL. W tym przypadku ustalimy hasło administratora (SA) dla bazy danych o nazwie sql1, działającej na portach 1401 — 1433.
sudo podman run -e 'ACCEPT_EULA=Y' -e
'MSSQL_SA_PASSWORD='
—name 'sql1' -p 1401:1433 -v /var/mssql:/var/opt/mssql:Z -d
mcr.microsoft.com/mssql/rhel/server:2019-CTP2.2
Szczegółowe informacje o podmanie i kontenerach w Red Hat Enterprise Linux 8 Beta można znaleźć tutaj.
Pracuje za dwóch
Możesz przetestować połączenie RHEL 8 Beta z SQL Server 2017 zarówno poprzez tradycyjną instalację, jak i przez instalację aplikacji kontenerowej. W każdym przypadku teraz będziesz mieć działający egzemplarz SQL Server, a możesz przystąpić do wypełniania bazy danych lub badać dostępne w RHEL 8 Beta narzędzia do tworzenia stosu aplikacji, automatyzacji procesu konfiguracji lub optymalizacji wydajności.
Na początku maja koniecznie posłuchaj wystąpienia Boba Warda, głównego architekta w Microsoft Database Systems Group, na szczycie , na którym omawiane będzie wdrożenie nowoczesnej platformy do pracy z danymi opartej na SQL Server 2019 i Red Hat Enterprise Linux 8 Beta.
8 maja oczekiwany jest oficjalny wydanie, otwierające użycie SQL Server w rzeczywistych aplikacjach.
Źródło: habr.com
