Úvod
S rostoucím počtem nových serverů běžících na Linuxu a dokonce s třetinou virtuálních počítačů Azure společnosti Microsoft běžících na Linuxu se společnost rozhodla přinést SQL Server na Linux, aby zvýšila svůj podíl na trhu a přilákala nové zákazníky.
Microsoft se začal prosazovat i mimo prostředí Windows s různými produkty, jako jsou aplikace Office 365 pro různé operační systémy mobilních telefonů, například iOS a Android, a také vlastní operační systém Windows Phone. Společnost Microsoft uvedla, že chce dodat SQL Server v systémech Ubuntu, Red Hat a SUSE, který bude působit, vypadat a fungovat stejně jako verze SQL Serveru pro Windows, přičemž uživatelé by mezi nimi neměli vidět rozdíly, alespoň z pohledu front-endu.
Věci, které je třeba vzít v úvahu
SQL Server v Linuxu je stále velmi nový, takže se při jeho používání může projevit nekonzistentní chování a částečně podporované funkce. Microsoft uvedl, že preview verze SQL Serveru na Ubuntu, Red Hat, SUSE a Docker engine bude podporovat základní funkce, jako jsou základní komponenty databázového stroje, které podporují transakční zpracování a datové sklady. V současné době, jak uvádí společnost Microsoft ve svých poznámkách k vydání SQL Serveru na Linuxu, i v nejnovější verzi Community Tech Preview 2.0 (CTP 2.0) je stále mnoho funkcí, které nejsou podporovány, takže v této oblasti je třeba ještě zapracovat. Přesto je to pro Microsoft velký krok, na který se těšilo mnoho DBA.
Systémové požadavky
Microsoft neuvedl úplné systémové požadavky pro instalaci SQL Serveru na Ubuntu, Red Hat, SUSE a Docker engine, jediné, co poznamenal, je, že vyžaduje více než 3,25 GB RAM. Níže budou uvedeny základní minimální systémové hardwarové požadavky pro provoz Ubuntu, upravené o požadavky na paměť RAM a prostor na pevném disku pro provoz SQL Serveru v Ubuntu:
CPU:
RAM: minimálně 4 GB (Ubuntu potřebuje minimálně 512 MB)
HDD: minimálně 5 GB pro Ubuntu a další 3 GB pro SQL Server
Postup instalace
SQL Server v Linuxu v současné době podporuje několik distribucí Linuxu, kterými jsou Red Hat, SUSE a Ubuntu, a také engine Docker.
V tomto článku budeme instalovat SQL Server na Ubuntu, jehož nejnovější verze je v době psaní tohoto článku 17.04.
-
Nejprve otevřete Terminál kliknutím pravým tlačítkem myši na ploše a výběrem možnosti Otevřít Terminál.
Případně můžete přejít do nabídky Start v levém horním rohu, otevřít ji a kliknutím na Terminál jej otevřít.
-
Po otevření Terminálu nás přivítá okno, které vypadá jako na obrázku níže:
-
Právě zde probíhá instalace. Nejprve musíme nechat importovat klíče GPG veřejného úložiště zadáním následujícího příkazu:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –
-
Před dokončením kroku musí uživatel vložit heslo k účtu.
-
Poté musíme mít zaregistrovaný repozitář Microsoft SQL Server v Ubuntu. V tomto kroku, stejně jako v předchozím, musí uživatel před dokončením kroku zadat heslo k účtu (ale pouze v případě, že uplynulo 15 minut od poslední akce, protože se jedná o funkci Ubuntu zadávat heslo pouze jednou za 15 minut, aby se usnadnil průběh práce).
curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
-
Nyní můžeme nainstalovat SQL Server v Ubuntu zadáním následujících příkazů:
sudo apt-get update
sudo apt-get install -y mssql-serverTím je balíček nainstalován. Pro kompletní instalaci SQL Serveru v Ubuntu musíme spustit instalaci mssql-conf a postupovat podle pokynů. Doporučuje se také silné heslo pro vytvoření účtu SA (Minimální délka 8 znaků, včetně velkých i malých písmen a číslic nebo/i nealfanumerických symbolů se základem 10). Pro pokračování v instalaci spusťte následující příkaz:
sudo /opt/mssql/bin/mssql-conf setup
-
Po dokončení instalace SQL Serveru v Ubuntu můžeme zkontrolovat, zda je služba spuštěna a funguje, zadáním následujícího příkazu:
systemctl status mssql-server
-
Po nějaké době může být vydána aktualizace softwaru, kterou lze vyřídit pomocí několika řádků v Terminálu. Nejprve je třeba aktualizovat seznamy úložišť apt-get spuštěním níže uvedeného příkazu a zadáním hesla účtu.
sudo apt-get update
sudo /opt/mssql/bin/mssql-conf setup -
Po aktualizaci seznamů úložišť stačí k aktualizaci SQL Serveru spustit výše uvedený instalační příkaz, který aktualizuje balíček mssql-server:
sudo apt-get install mssql-server
Spuštění těchto příkazů se pokusí stáhnout nejnovější balíček a poté nahradí aktualizované binární soubory, které se nacházejí v adresáři /opt/mssql. Touto operací nejsou ovlivněny žádné uživatelské ani systémové databáze.
Instalace nástrojů SQL Serveru
Volitelně mohou uživatelé nainstalovat nástroje SQL Serveru v Ubuntu a zlepšit tak své zkušenosti. V současné době balíček obsahuje nástroj pro dotazování z příkazového řádku (sqlcmd) a nástroj pro hromadný import a export (bcp).
Instalace se provádí také z terminálu:
-
Nejprve je třeba importovat klíče GPG veřejného úložiště. Po spuštění tohoto příkazu je nutné zadat heslo účtu.
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –
-
Poté je třeba zaregistrovat úložiště Microsoft Ubuntu:
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
-
Aktualizujte seznam zdrojů a spusťte instalační příkaz s vývojovým balíčkem unixODBC:
sudo apt-get update
sudo apt-get install mssql-tools unixodbc-dev -
Po spuštění druhého příkazu, bude uživatel vyzván k povolení instalace
-
Poté bude muset uživatel přijmout licenční podmínky
-
Aby příkazy sqlcmd a bcp byly přístupné z bash shellu, je třeba upravit PATH v ~/.bash_profile pomocí příkazu:
echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bash_profile
Pro nepřihlašovací a interaktivní relace je třeba odpovídajícím způsobem upravit PATH:
echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bashrc
source ~/.bashrc -
Po dokončení instalace se vytvoří testovací databáze pro ověření funkčnosti SQL Serveru v Ubuntu.
-
Po dokončení procesu se spustí nejnovější SQL Server Management Studio nainstalované na počítači se systémem Windows. Vzhledem k tomu, že počítač Ubuntu je v místní síti, je v tomto případě IP adresa 192.168.1.8.. Po připojení s přihlašovacími údaji SQL Serveru (protože ověřování Windows v tomto případě nefunguje) je vidět, že databáze, kterou jsme právě vytvořili pomocí nástroje sqlcmd v terminálu Linux, je vytvořena a server je dosažitelný.
Instalace agenta SQL Serveru
Kromě nástrojů SQL Serveru lze po instalaci SQL Serveru v Ubuntu jako doplněk nainstalovat také agenta SQL Serveru, který slouží ke správě a spouštění naplánovaných úloh.
-
Aktualizujte seznam zdrojů a spusťte instalační příkaz, po kterém Terminál vyzve k restartování SQL Serveru, aby bylo možné Agenta spustit.
sudo apt-get update
sudo apt-get install mssql-server-agent
sudo systemctl restart mssql-serverPoté se po připojení k serveru v SSMS zobrazí, že Agent SQL Serveru běží.
Řešení problémů
Problém
-
Nelze se připojit k SQL Serveru v Ubuntu ze systému SSMS
Řešení
-
Spuštěním příkazu ověřte, zda server na počítači s Ubuntu běží:
sudo systemctl status mssql-server
Pokud server neběží, lze jej spustit příkazem:
sudo systemctl start mssql-server
Poté by opětovné spuštění předchozího příkazu mělo vypadat nějak takto:
-
Ověřte, zda firewall povolil port 1433, který SQL Server standardně používá. Nejprve musíme zkontrolovat stav ufw, což je nekomplikovaný firewall Ubuntu, spuštěním následujícího příkazu a zadáním hesla k účtu:
sudo ufw status
-
Pro povolení portu přes ufw spusťte následující příkaz:
sudo ufw allow 1433
-
Problém
- Nelze se připojit k serveru pomocí účtu SA
Řešení
-
Chcete-li obnovit heslo správce systému (SA), spusťte následující příkazy:
sudo systemctl stop mssql-server
sudo /opt/mssql/bin/mssql-conf setupVezměte na vědomí, že se tím dočasně zastaví služba SQL Server mssql-server.
- Autor
- Poslední příspěvky
Stefan v současné době pracuje ve společnosti ApexSQL LLC jako inženýr prodeje softwaru, kde se specializuje na výkon databází a zálohování.
- Jak nainstalovat SQL Server na Ubuntu – 18. května 2017
.