sql >> Databáze >  >> RDS >> Sqlserver

Nastavení místní databáze SQL Server


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.





  1. 12c VARCHAR2(32767)

  2. Proč je 1899-12-30 nulové datum v Access / SQL Server místo 12/31?

  3. Jak zrychlit hromadné vkládání na MS SQL Server pomocí pyodbc

  4. Jak funguje SEC_TO_TIME() v MariaDB