SQLShack

Bevezetés

Mivel egyre több új szerver fut Linuxon, sőt a Microsoft Azure virtuális gépeinek egyharmada is Linuxon fut, a piaci részesedésük növelése és új ügyfelek megnyerése érdekében úgy döntöttek, hogy az SQL Servert Linuxra is átültetik.

A Microsoft elkezdett teret hódítani a Windows-környezeteken kívül is különböző termékekkel, például az Office 365 alkalmazásokkal a különböző mobiltelefonos operációs rendszerekhez, például az iOS és az Android, valamint a saját Windows Phone operációs rendszerükhöz. A Microsoft kijelentette, hogy olyan SQL Servert szeretne szállítani Ubuntun, Red Haton és SUSE-n, amely ugyanolyan érzésű, kinézetű és teljesítményű, mint az SQL Server Windows verziója, ahol a felhasználóknak nem kellene észrevenniük a különbségeket ezek között, legalábbis a front-end szempontjából.

Mit kell figyelembe venni

Az SQL Server Linuxon még mindig nagyon új, ezért használatakor ellentmondásos viselkedés és részben támogatott funkciók jelentkezhetnek. A Microsoft kijelentette, hogy az SQL Server Ubuntu, Red Hat, SUSE és Docker motoron futó előzetes verziója támogatja az alapvető képességeket, például az alapvető adatbázis-motor komponenseket, amelyek támogatják a tranzakciófeldolgozást és az adattárházakat. Jelenleg, ahogy a Microsoft a Linuxon futó SQL Serverrel kapcsolatos kiadási megjegyzéseiben állította, még a legújabb Community Tech Preview 2.0 (CTP 2.0) verzióban is rengeteg olyan funkció van, amely nem támogatott, így ezen a területen még van mit dolgozni. Mindazonáltal ez egy hatalmas lépés a Microsoft számára, amelyet sok DBA már nagyon várt.

Rendszerkövetelmények

A Microsoft nem közölte az SQL Server Ubuntu, Red Hat, SUSE és Docker motorra történő telepítésének teljes rendszerkövetelményét, csak annyit jegyeztek meg, hogy több mint 3,25 GB RAM-ra van szükség. Az alábbiakban felsoroljuk az Ubuntu futtatásához szükséges alapvető minimális rendszerhardver követelményeket, módosítva az SQL Server Ubuntun történő futtatásához szükséges RAM és HDD helyigényt:
CPU: (Intel Celeron vagy jobb)
RAM: minimum 4GB (az Ubuntunak minimum 512MB-ra van szüksége)
HDD: 5GB az Ubuntunak és további minimum 3GB az SQL Server számára

Telepítési eljárás

Az SQL Server Linuxon jelenleg néhány Linux disztribúciót támogat, ezek a Red Hat, a SUSE és az Ubuntu, valamint a Docker motor.

Ebben a cikkben az SQL Servert Ubuntura fogjuk telepíteni, a cikk írásakor a legújabb verzió a 17.04.

  1. Először is nyissa meg a Terminált az asztalon jobb egérgombbal kattintva, majd válassza a Terminál megnyitása lehetőséget.

    Alternatívaként a bal felső sarokban található Start menü megnyitásával és a Terminálra kattintva megnyithatja.

  2. A Terminál megnyitása után egy olyan ablak fogad minket, amely az alábbi képen látható módon néz ki.

  3. Itt történik a telepítés. Először a nyilvános tároló GPG kulcsait kell importálnunk a következő parancs megadásával:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –

  4. A felhasználónak a lépés befejezése előtt be kell írnia a fiók jelszavát.

  5. Ezt követően regisztrálnunk kell a Microsoft SQL Server Ubuntu tárolóját. Ebben a lépésben is, mint az előzőekben, a felhasználónak a lépés befejezése előtt meg kell adnia a fiók jelszavát (de csak akkor, ha az utolsó művelet óta eltelt 15 perc, mivel ez az Ubuntu sajátossága, hogy a munkafolyamat megkönnyítése érdekében 15 perc alatt csak egyszer írja be a jelszót).

    curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list

  6. Most az alábbi parancsok beírásával telepíthetjük az SQL Servert az Ubuntura:

    sudo apt-get update
    sudo apt-get install -y mssql-server

    Ezzel a csomag telepítve van. Az SQL Server teljes körű telepítéséhez Ubuntun az mssql-conf telepítőprogramot kell futtatnunk, és követnünk kell az utasításokat. Az SA-fiók létrehozásához egy erős jelszó is ajánlott (minimum 8 karakter hosszú, beleértve a kis- és nagybetűket, valamint a 10-es számjegyeket vagy/és a nem alfanumerikus szimbólumokat). A telepítés folytatásához futtassuk a következő parancsot:

    sudo /opt/mssql/bin/mssql-conf setup

  7. Miután az SQL Server telepítése Ubuntun befejeződött, a következő paranccsal ellenőrizhetjük, hogy a szolgáltatás elindult-e és fut-e. A következő parancs megadásával:

    systemctl status mssql-server

  8. Egy idő után megjelenhet egy szoftverfrissítés, amit a Terminálban néhány sorral kezelhetünk. Először is frissíteni kell az apt-get repository listákat az alábbi parancs futtatásával és a fiók jelszavának megadásával.

    sudo apt-get update
    sudo /opt/mssql/bin/mssql-conf setup

  9. A repository listák frissítése után az SQL Server frissítéséhez már csak a fenti telepítő parancsot kell futtatni, ami frissíti az mssql-server csomagot:

    sudo apt-get install mssql-server

    E parancsok futtatása megpróbálja letölteni a legújabb csomagot, majd kicseréli a frissített binárisokat, amelyek a /opt/mssql alatt találhatók. Ez a művelet nem érinti a felhasználó által létrehozott adatbázisokat vagy a rendszeradatbázisokat.

Szervereszközök telepítése

Opcionálisan a felhasználók telepíthetik az SQL Server Tools-t az Ubuntun, hogy javítsák az élményt. Jelenleg a csomag tartalmazza a parancssori lekérdező segédprogramot (sqlcmd) és a Bulk import export segédprogramot (bcp).

A telepítés terminálról is elvégezhető:

  1. Először a nyilvános adattár GPG kulcsainak importálása szükséges. A parancs futtatása után be kell írni a fiók jelszavát.

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –

  2. Ezt követően a Microsoft Ubuntu repository regisztrálása szükséges:

    curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list

  3. Frissítse a forráslistát és futtassa a telepítési parancsot az unixODBC fejlesztői csomaggal:

    sudo apt-get update
    sudo apt-get install mssql-tools unixodbc-dev

  4. A második parancs futtatása után, a felhasználónak engedélyeznie kell a telepítést

  5. Ezt követően a felhasználónak el kell fogadnia a licencfeltételeket

    .

  6. Ahhoz, hogy az sqlcmd és bcp parancsok elérhetők legyenek a bash shellből, PATH-t módosítani kell a ~/.bash_profilban a következő paranccsal:

    echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bash_profile

    Nem bejelentkezési és interaktív munkamenetek esetén a PATH-ot ennek megfelelően módosítani kell:

    echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bashrc
    source ~/.bashrc

  7. A telepítés befejezése után létrejön egy tesztadatbázis az SQL Server működésének ellenőrzésére Ubuntun.

  8. A folyamat végeztével elindul a Windows gépre telepített legújabb SQL Server Management Studio. Mivel az Ubuntu gép a helyi hálózatban van, az IP-cím ebben az esetben 192.168.1.8.. Miután csatlakoztunk az SQL Server hitelesítő adatokkal (mivel a Windows hitelesítés ebben az esetben nem működik), látható, hogy a Linux Terminálban az sqlcmd eszközzel az imént létrehozott adatbázis létrejött, és a szerver elérhető.

Az SQL Server Agent telepítése

Az SQL Server Tools mellett az SQL Server Agent is telepíthető kiegészítésként, miután telepítettük az SQL Servert Ubuntun az ütemezett feladatok kezelésére és futtatására.

  1. Frissítsük a forráslistát és futtassuk a telepítési parancsot, ami után a Terminál felszólít az SQL Server újraindítására, hogy az Agent elindulhasson.

    sudo apt-get update
    sudo apt-get install mssql-server-agent
    sudo systemctl restart mssql-server

    Ezután az SSMS-ben a szerverhez csatlakozva megjelenik, hogy az SQL Server Agent fut.

Hibaelhárítás

Probléma

  • Nem tud csatlakozni az SQL Serverhez Ubuntun az Ubuntun keresztül. SSMS

Megoldások

  • A parancs futtatásával ellenőrizze, hogy a szerver fut-e az Ubuntu gépen:

    sudo systemctl status mssql-server

    Ha a szerver nem fut, akkor a következő paranccsal indítható el:

    sudo systemctl start mssql-server

    Ezután az előző parancs ismételt futtatásával valami ilyesminek kell kinéznie:

  • Ellenőrizze, hogy a tűzfal engedélyezte-e az 1433-as portot, amelyet az SQL Server alapértelmezés szerint használ. Először is ellenőriznünk kell az ufw, azaz az Ubuntu nem bonyolult tűzfalának állapotát a következő parancs futtatásával és a fiók jelszavának megadásával:

    sudo ufw status

    • Egy port engedélyezéséhez az ufw-n keresztül futtassuk a következő parancsot:

      sudo ufw allow 1433

Probléma

  • Nem tud csatlakozni a kiszolgálóhoz az SA fiókkal

Megoldás

  • A rendszergazda (SA) jelszó visszaállításához, futtassa a következő parancsokat:

    sudo systemctl stop mssql-server
    sudo /opt/mssql/bin/mssql-conf setup

    Vegye figyelembe, hogy ez ideiglenesen leállítja az SQL Server mssql-server szolgáltatást.

  • Author
  • Recent Posts
Stefan Veselinovic
Support Sales Engineer at ApexSQL
Stefan már fiatalon belekóstolt az elektronika világába, mindig körülvette magát valamivel, amin bütykölhetett. Ezt követően került bele az informatika világába is. Érdeklődni kezdett az adatbázis-kezelés, a programozás és a grafikai tervezés iránt. Arra törekszik, hogy minden nap új dolgok tanulásával és kipróbálásával fejlessze magát.
Stefan jelenleg az ApexSQL LLC-nél dolgozik szoftverértékesítési mérnökként, ahol az adatbázisok teljesítményére és mentésére specializálódott.

Stefan Veselinovic
Stefan Veselinovic legújabb bejegyzései (az összeset lásd)
  • Hogyan telepítsük az SQL Servert Ubuntura – 2017. május 18.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.