Přehled
V této příručce si povíme, jak nainstalovat a nakonfigurovat instanci SQL Server a sqlcmd
klient příkazového řádku. Projdeme si, jak nainstalovat a nastavit tyto součásti na vašem počítači pro místní přístup.
Tato příručka se bude týkat následujících platforem:
- Nastavení serveru SQL Server v systému Windows
- Nastavení SQL Server na macOS (s Dockerem)
- Nastavení serveru SQL Server v systému Linux
- Ubuntu
- CentOS a Red Hat
- S Dockerem
Přejděte do sekcí, které odpovídají platformám, se kterými budete pracovat.
Nastavení SQL Server v systému Windows
Společnost Microsoft poskytuje na svém webu nativní instalační programy systému Windows pro SQL Server a nabízí různé verze serveru SQL Server vhodné pro různé účely. Pro účely této příručky si stáhneme a nainstalujeme bezplatnou edici Developer. Pokud ji chcete používat pro produkci, můžete snadno upgradovat na placenou verzi z edice Developer.
Chcete-li začít, navštivte stránku společnosti Microsoft pro SQL Server. Najděte sekci související s edicí pro vývojáře a klikněte na Stáhnout nyní :
Po dokončení stahování dvakrát klikněte na soubor a spusťte instalační program (možná budete muset potvrdit, že chcete programu povolit provádění změn ve vašem počítači).
Na úvodní obrazovce instalačního programu budete požádáni o výběr typu instalace, kterou chcete provést:
Vyberte Základní pokračovat v konvenční instalaci pomocí nejběžnějších možností.
Dále budete požádáni o souhlas s licenčními podmínkami Developer Edition:
Až si přečtete licenci a souhlasíte s podmínkami, klikněte na Přijmout pokračovat.
Dále potvrďte nebo změňte umístění instalace:
Až budete připraveni, klikněte na Instalovat pro zahájení procesu instalace.
Instalační program začne stahovat a instalovat součásti pro nastavení serveru SQL na vašem počítači:
Po dokončení instalace se zobrazí obrazovka s aktuálními vlastnostmi instalace:
Chcete-li se okamžitě připojit k nové instanci SQL Server, klikněte na Připojit nyní ve spodní části.
Nové okno bude Cmd
zobrazí se okno a automaticky vás přihlásí do instance SQL Server pomocí sqlcmd
klient:
Jak je znázorněno v komentáři v horní části okna, k serveru SQL se můžete kdykoli připojit ručně pomocí sqlcmd
klienta zadáním:
sqlcmd -S <yourhostname> -E
Chcete-li ukončit aktuální relaci SQL, zadejte:
EXIT
Nastavení SQL serveru v systému macOS
Microsoft sice neposkytuje nativní instalační program pro macOS, ale podporuje spouštění SQL Serveru na macOS prostřednictvím Dockeru. Hlavní kontejner SQL Server Docker je vytvořen pomocí kontejneru Linux, který umožňuje libovolnému hostiteli, který je schopen spouštět kontejnery Docker, provozovat databázový server.
Pro úspěšné spuštění bitové kopie budete potřebovat alespoň 2 GB paměti (pravděpodobně alespoň trochu více), nicméně samotný Docker vyžaduje alespoň 4 GB paměti.
Nejprve se ujistěte, že máte ve svém systému Docker. Docker Desktop pro Mac obsahuje Docker Engine a další související aplikace. Pokud ještě nemáte nainstalovaný Docker, postupujte podle pokynů uvedených ve výše uvedeném odkazu.
Jakmile budete mít Docker spuštěný, můžete získat obraz SQL Server Docker z Microsoft Container Registry zadáním:
docker pull mcr.microsoft.com/mssql/server:2019-latest
To stáhne všechny požadované obrazové vrstvy do vašeho místního systému, což umožní rychlejší spuštění.
Až budete připraveni spustit kontejner, zadejte následující příkaz.
Nezapomeňte nahradit <password>
s hodnotou vašeho zamýšleného hesla a vyberte hodnotu, která odpovídá zásadám hesla obrázku. V době psaní tohoto článku jsou zásady definovány takto:"Heslo musí mít alespoň 8 znaků a obsahovat znaky ze tří z následujících čtyř sad:Velká písmena, Malá písmena, Základní 10 číslic a Symboly.":
docker run --env "ACCEPT_EULA=Y" --env "SA_PASSWORD=<password>" --publish 1433:1433 --name mssql --hostname mssql --detach mcr.microsoft.com/mssql/server:2019-latest
Kontejner SQL Server bude spuštěn na pozadí. Zobrazený řetězec znaků je ID nového kontejneru.
Můžete ověřit, zda je kontejner v provozu, zadáním:
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESffa9ef357b5c mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/perm…" 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp mssqlae00765e36fb hello-world "/hello" 24 minutes ago Exited (0) 24 minutes ago dreamy_swanson
Měli byste vidět mssql
kontejner mezi seznamem. Pokud kontejner neběží nebo máte potíže, můžete zkusit zobrazit jeho protokoly a zjistit, zda existují nějaké užitečné zprávy:
docker logs mssql
Kontejner SQL Server má nejen nainstalovaný databázový server, ale také některé běžné dostupné nástroje, včetně sqlcmd
klient příkazového řádku. Chcete-li použít tohoto klienta pro připojení k instanci databáze, můžete použít docker exec
pro přístup k příkazu a ověření proti databázi:
docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"
Budete ověřeni pro SQL Server uvnitř kontejneru a umístěni do prostředí SQL. Můžete ověřit, že vše funguje, zadáním:
SELECT @@VERSION;GO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 18.04.5 LTS) <X64> (1 rows affected)
Chcete-li ukončit relaci SQL a vrátit se do normálního prostředí, zadejte:
EXIT
Chcete-li po dokončení kontejner SQL Server vypnout, můžete jej zastavit zadáním:
docker stop mssql
Chcete-li odstranit instanci kontejneru (včetně všech dat uvnitř!), zadejte:
docker rm mssql
Chcete-li zachovat data v kontejneru SQL Server, můžete použít jednu z technik popsaných v dokumentaci společnosti Microsoft nebo se podívat na vlastní dokumentaci Dockeru o používání datových svazků s kontejnery.
Nastavení SQL serveru v systému Linux
Způsoby instalace se liší v závislosti na distribuci Linuxu, kterou používáte. Postupujte podle části níže, která odpovídá vaší distribuci Linuxu. Existují také pokyny pro použití Dockeru, pokud dáváte přednost této konfiguraci nebo chcete použít distribuci, která není uvedena.
- Ubuntu
- CentOS a Red Hat
- S Dockerem
Ubuntu
Nejjednodušší způsob, jak nainstalovat SQL Server na Ubuntu 20.04, je instalace z vyhrazených úložišť poskytovaných společností Microsoft. K úspěšné instalaci a spuštění potřebného softwaru musí mít váš počítač alespoň 2 GB paměti.
Chcete-li začít, přidejte do systému novou definici úložiště zadáním:
sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
Chcete-li získat přístup k sqlcmd
, musíte také přidat samostatné úložiště binární a další nástroje:
sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/20.04/prod.list)"
Dále přidejte podpisový klíč balíčku Microsoft do apt
takže důvěřuje balíčkům v novém úložišti:
wget --quiet -O - https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
S nastavením úložiště můžete nainstalovat SQL Server a sqlcmd
příkazového řádku klienta zadáním:
sudo apt install mssql-server mssql-tools unixodbc-dev
Po dokončení instalace je třeba nakonfigurovat novou instanci databáze. Chcete-li tak učinit, spusťte přiložené mssql-conf setup
skript pro nastavení některých základních vlastností vašeho nového systému:
sudo /opt/mssql/bin/mssql-conf setup
Budete dotázáni na řadu otázek za účelem konfigurace databázového serveru.
Nejprve se vás zeptá, jakou edici SQL serveru chcete použít:
Choose an edition of SQL Server: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded 7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum 8) I bought a license through a retail sales channel and have a product key to enter.Details about editions can be found athttps://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409Use of PAID editions of this software requires separate licensing through aMicrosoft Volume Licensing program.By choosing a PAID edition, you are verifying that you have the appropriatenumber of licenses in place to install and run this software.Enter your edition(1-8):
Pokud máte placenou licenci, můžete si vybrat příslušnou verzi. Pokud server používáte v neprodukčním prostředí, je bezpečné zvolit vývojářskou edici.
Dále budete muset znovu přijmout licenční podmínky:
The license terms for this product can be found in/usr/share/doc/mssql-server or downloaded from:https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409The privacy statement can be viewed at:https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409Do you accept the license terms? [Yes/No]:
Nakonec budete muset nastavit a potvrdit heslo pro účet správce systému SQL Server (na mnoha místech nazývaný účet SA):
Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:
Chcete-li použít sqlcmd
klienta pro připojení k vaší instanci SQL Server, je nejjednodušší přidat mssql-tools
binárního adresáře do vaší PATH
. Chcete-li to nakonfigurovat, zadejte:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Poté obnovte zdroj jednoho ze dvou výše uvedených souborů, abyste vyhodnotili novou PATH
pro vaši aktuální relaci:
source ~/.bashrc
Nyní se můžete připojit k instanci databáze zadáním:
sqlcmd -U SA -S 127.0.0.1
Budete vyzváni k zadání hesla, které jste dříve nastavili. Po úspěšném ověření budete vhozeni do prostředí SQL. Odtud můžete ověřit, že vše funguje, vytištěním verze serveru:
SELECT @@VERSIONGO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 20.04.2 LTS) <X64> (1 rows affected)
Chcete-li ukončit prostředí SQL a vrátit se zpět na příkazový řádek, můžete zadat:
EXIT
CentOS a Red Hat
Nejjednodušší způsob, jak nainstalovat SQL Server na CentOS nebo Red Hat, je použít úložiště poskytovaná společností Microsoft. Hostitelé Linuxu musí mít alespoň 2 GB paměti, aby mohli nainstalovat a spustit SQL Server.
Před instalací SQL Serveru musíte nainstalovat a nakonfigurovat jeho závislosti. K pokračování potřebujeme Python 2 i OpenSSL 10:
sudo yum install python2 compat-openssl10
Po instalaci Pythonu 2 nakonfigurujte systém tak, aby jej používal jako výchozí instanci Pythonu:
sudo alternatives --config python
Z následujícího seznamu vyberte číslo spojené s instalací Pythonu 2. V níže uvedeném příkladu to bude možnost 2:
There are 2 programs which provide 'python'. Selection Command ----------------------------------------------- *+ 1 /usr/libexec/no-python 2 /usr/bin/python2 Enter to keep the current selection[+], or type selection number: 2
Díky závislostem můžete nyní konfigurovat úložiště SQL Server YUM:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/mssql-server-2019.repo
Poté musíte nakonfigurovat další úložiště, abyste získali přístup k sqlcmd
a další nástroje:
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/prod.repo
Jakmile jsou úložiště nakonfigurována, nainstalujte SQL Server zadáním:
sudo yum install mssql-server mssql-tools unixODBC-devel
Po dokončení instalace je třeba nakonfigurovat novou instanci databáze. Chcete-li tak učinit, spusťte přiložené mssql-conf setup
skript pro nastavení některých základních vlastností vašeho nového systému:
sudo /opt/mssql/bin/mssql-conf setup
Budete dotázáni na řadu otázek za účelem konfigurace databázového serveru.
Nejprve se vás zeptá, jakou edici SQL serveru chcete použít:
Choose an edition of SQL Server: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded 7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum 8) I bought a license through a retail sales channel and have a product key to enter.Details about editions can be found athttps://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409Use of PAID editions of this software requires separate licensing through aMicrosoft Volume Licensing program.By choosing a PAID edition, you are verifying that you have the appropriatenumber of licenses in place to install and run this software.Enter your edition(1-8):
Pokud máte placenou licenci, můžete si vybrat příslušnou verzi. Pokud server používáte v neprodukčním prostředí, je bezpečné zvolit vývojářskou edici.
Dále budete muset znovu přijmout licenční podmínky:
The license terms for this product can be found in/usr/share/doc/mssql-server or downloaded from:https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409The privacy statement can be viewed at:https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409Do you accept the license terms? [Yes/No]:
Nakonec budete muset nastavit a potvrdit heslo pro účet správce systému SQL Server (na mnoha místech nazývaný účet SA):
Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:
Chcete-li použít sqlcmd
klienta pro připojení k vaší instanci SQL Server, je nejjednodušší přidat mssql-tools
binárního adresáře do vaší PATH
. Chcete-li to nakonfigurovat, zadejte:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Poté obnovte zdroj jednoho ze dvou výše uvedených souborů, abyste vyhodnotili novou PATH
pro vaši aktuální relaci:
source ~/.bashrc
Nyní se můžete připojit k instanci databáze zadáním:
sqlcmd -U SA -S 127.0.0.1
Budete vyzváni k zadání hesla, které jste dříve nastavili. Po úspěšném ověření budete vhozeni do prostředí SQL. Odtud můžete ověřit, že vše funguje, vytištěním verze serveru:
SELECT @@VERSIONGO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (CentOS Linux 8) <X64> (1 rows affected)
Chcete-li ukončit prostředí SQL a vrátit se zpět na příkazový řádek, můžete zadat:
EXIT
S Dockerem
Pokud používáte distribuci Linuxu, pro kterou Microsoft neposkytuje balíčky, nebo pokud prostě dáváte přednost, další možností je spustit SQL Server s Dockerem. K úspěšnému spuštění bitové kopie budete potřebovat alespoň 2 GB paměti (pravděpodobně alespoň trochu více).
Nejprve se ujistěte, že máte v systému Docker Engine. Podrobné pokyny pro různé platformy naleznete v dokumentaci k Docker Engine.
Jakmile budete mít Docker spuštěný, můžete získat obraz SQL Server Docker z Microsoft Container Registry zadáním:
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
To stáhne všechny požadované obrazové vrstvy do vašeho místního systému, což umožní rychlejší spuštění.
Až budete připraveni spustit kontejner, zadejte následující příkaz.
Nezapomeňte nahradit <password>
s hodnotou vašeho zamýšleného hesla a vyberte hodnotu, která odpovídá zásadám hesla obrázku. V době psaní tohoto článku jsou zásady definovány takto:"Heslo musí mít alespoň 8 znaků a obsahovat znaky ze tří z následujících čtyř sad:Velká písmena, Malá písmena, Základní 10 číslic a Symboly.":
sudo docker run --env "ACCEPT_EULA=Y" --env "SA_PASSWORD=<password>" --publish 1433:1433 --name mssql --hostname mssql --detach mcr.microsoft.com/mssql/server:2019-latest
Kontejner SQL Server bude spuštěn na pozadí. Zobrazený řetězec znaků je ID nového kontejneru.
Můžete ověřit, zda je kontejner v provozu, zadáním:
sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESffa9ef357b5c mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/perm…" 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp mssqlae00765e36fb hello-world "/hello" 24 minutes ago Exited (0) 24 minutes ago dreamy_swanson
Měli byste vidět mssql
kontejner mezi seznamem. Pokud kontejner neběží nebo máte potíže, můžete zkusit zobrazit jeho protokoly a zjistit, zda existují nějaké užitečné zprávy:
sudo docker logs mssql
Kontejner SQL Server má nejen nainstalovaný databázový server, ale také některé běžné dostupné nástroje, včetně sqlcmd
klient příkazového řádku. Chcete-li použít tohoto klienta pro připojení k instanci databáze, můžete použít docker exec
pro přístup k příkazu a ověření proti databázi:
sudo docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"
Budete ověřeni pro SQL Server uvnitř kontejneru a umístěni do prostředí SQL. Můžete ověřit, že vše funguje, zadáním:
SELECT @@VERSION;GO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 18.04.5 LTS) <X64> (1 rows affected)
Chcete-li ukončit relaci SQL a vrátit se do normálního prostředí, zadejte:
EXIT
Chcete-li po dokončení kontejner SQL Server vypnout, můžete jej zastavit zadáním:
sudo docker stop mssql
Chcete-li odstranit instanci kontejneru (včetně všech dat uvnitř!), zadejte:
sudo docker rm mssql
Chcete-li zachovat data v kontejneru SQL Server, můžete použít jednu z technik popsaných v dokumentaci společnosti Microsoft nebo se podívat na vlastní dokumentaci Dockeru o používání datových svazků s kontejnery.