Översikt
I den här guiden kommer vi att prata om hur man installerar och konfigurerar en SQL Server-instans och sqlcmd
kommandoradsklient. Vi kommer att gå igenom hur du installerar och ställer in dessa komponenter på din dator för lokal åtkomst.
Den här guiden kommer att täcka följande plattformar:
- Konfigurera SQL Server på Windows
- Konfigurera SQL Server på macOS (med Docker)
- Konfigurera SQL Server på Linux
- Ubuntu
- CentOS och Red Hat
- Med Docker
Navigera till avsnitten som matchar plattformarna du kommer att arbeta med.
Konfigurera SQL Server på Windows
Microsoft tillhandahåller inbyggda Windows-installationsprogram för SQL Server på sin webbplats och erbjuder olika versioner av SQL Server som lämpar sig för olika ändamål. För syftet med den här guiden kommer vi att ladda ner och installera den kostnadsfria Developer-utgåvan. Du kan enkelt uppgradera till en betalversion från Developer-utgåvan om du vill använda den för produktion.
Börja med att besöka Microsofts sida för SQL Server. Hitta avsnittet som är relaterat till Developer-utgåvan och klicka på Ladda ned nu :
När nedladdningen är klar dubbelklickar du på filen för att köra installationsprogrammet (du kan behöva bekräfta att du vill tillåta programmet att göra ändringar på din dator).
På installationsprogrammets startskärm kommer du att bli ombedd att välja vilken typ av installation du vill utföra:
Välj Grundläggande för att fortsätta med en konventionell installation med de vanligaste alternativen.
Därefter kommer du att bli ombedd att godkänna licensvillkoren för Developer Edition:
När du har läst licensen och godkänner villkoren klickar du på Acceptera för att fortsätta.
Bekräfta eller ändra sedan installationsplatsen:
När du är klar klickar du på Installera för att påbörja installationsprocessen.
Installationsprogrammet börjar ladda ner och installera komponenter för att ställa in SQL Server på din dator:
När installationen är klar visas en skärm med de aktuella installationsegenskaperna:
För att ansluta till den nya SQL Server-instansen direkt, klicka på Anslut nu längst ner.
Ett nytt fönster kommer att Cmd
fönstret visas och loggar dig automatiskt in på SQL Server-instansen med hjälp av sqlcmd
klient:
Som visas i en kommentar överst i fönstret kan du ansluta till SQL Server manuellt när som helst med sqlcmd
klient genom att skriva:
sqlcmd -S <yourhostname> -E
För att avsluta den aktuella SQL-sessionen, skriv:
EXIT
Konfigurera SQL Server på macOS
Även om Microsoft inte tillhandahåller ett inbyggt installationsprogram för macOS, stöder de körning av SQL Server på macOS via Docker. Den huvudsakliga SQL Server Docker-behållaren är byggd med en Linux-behållare, vilket gör att alla värdar som kan köra Docker-behållare kan köra databasservern.
Du behöver minst 2 GB minne (förmodligen åtminstone lite mer) för att köra bilden, dock kräver docker själv minst 4 GB minne.
För att börja, se till att du har Docker på ditt system. Docker Desktop för Mac inkluderar Docker Engine och andra relaterade applikationer. Om du inte redan har Docker installerat, följ instruktionerna i länken ovan.
När du har Docker igång kan du hämta SQL Server Docker-avbildningen från Microsoft Container Registry genom att skriva:
docker pull mcr.microsoft.com/mssql/server:2019-latest
Detta kommer att ladda ner alla nödvändiga bildlager till ditt lokala system, vilket möjliggör en snabbare uppstart.
När du är redo att starta behållaren, skriv följande kommando.
Kom ihåg att ersätta
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
SQL Server-behållaren kommer att startas i bakgrunden. Teckensträngen som visas är den nya behållarens ID.
Du kan verifiera att behållaren är igång genom att skriva:
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
Du bör se mssql
behållare bland listan. Om behållaren inte körs eller om du har problem kan du prova att titta på dess loggar för att se om det finns några användbara meddelanden:
docker logs mssql
SQL Server-behållaren har inte bara databasservern installerad, den har också några av de vanliga verktygen tillgängliga, inklusive sqlcmd
kommandoradsklient. För att använda den här klienten för att ansluta till databasinstansen kan du använda docker exec
för att komma åt kommandot och autentisera mot databasen:
docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"
Du kommer att autentiseras till SQL Server inuti behållaren och släppas in i ett SQL-skal. Du kan verifiera att allt är igång genom att skriva:
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)
För att avsluta SQL-sessionen och återgå till ditt vanliga skal, skriv:
EXIT
För att stänga av SQL Server-behållaren när du är klar kan du stoppa den genom att skriva:
docker stop mssql
För att ta bort behållarinstansen (inklusive all data inuti!), skriv:
docker rm mssql
För att bevara data i din SQL Server-behållare kan du använda en av de tekniker som beskrivs i Microsoft-dokumentationen eller ta en titt på Dockers egen dokumentation om användning av datavolymer med behållare.
Konfigurera SQL Server på Linux
Installationsmetoderna varierar beroende på vilken Linux-distribution du använder. Följ avsnittet nedan som matchar din Linux-distribution. Det finns också instruktioner som använder Docker om du föredrar den konfigurationen eller vill använda en distribution som inte är listad.
- Ubuntu
- CentOS och Red Hat
- Med Docker
Ubuntu
Det enklaste sättet att installera SQL Server på Ubuntu 20.04 är att installera från de dedikerade arkiven som tillhandahålls av Microsoft. Din maskin måste ha minst 2 GB minne för att installera och köra nödvändig programvara.
För att börja, lägg till en ny förvarsdefinition till ditt system genom att skriva:
sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
Du måste också lägga till ett separat arkiv för att få tillgång till sqlcmd
binära och andra verktyg:
sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/20.04/prod.list)"
Lägg sedan till Microsoft-paketsigneringsnyckeln till apt
så att den litar på paketen i det nya arkivet:
wget --quiet -O - https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
Med förvaret inställt kan du installera SQL Server och sqlcmd
kommandoradsklient genom att skriva:
sudo apt install mssql-server mssql-tools unixodbc-dev
När installationen är klar måste du konfigurera din nya databasinstans. För att göra det, kör den medföljande mssql-conf setup
skript för att ställa in några av de grundläggande egenskaperna för ditt nya system:
sudo /opt/mssql/bin/mssql-conf setup
Du kommer att ställas en rad frågor för att konfigurera databasservern.
Först kommer den att fråga dig vilken upplaga av SQL-server du vill använda:
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):
Om du har en betallicens kan du välja lämplig version. Om du använder servern i en icke-produktionsmiljö är det säkert att välja utvecklarversionen.
Därefter måste du acceptera licensvillkoren igen:
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]:
Slutligen måste du ställa in och bekräfta ett lösenord för SQL Server-systemadministratörskontot (kallas SA-kontot på många ställen):
Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:
För att använda sqlcmd
klient för att ansluta till din SQL Server-instans, är det enklast att lägga till mssql-tools
binär katalog till din PATH
. För att konfigurera detta, skriv:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Återställ sedan en av de två filerna ovan för att utvärdera den nya PATH
för din nuvarande session:
source ~/.bashrc
Du kan nu ansluta till din databasinstans genom att skriva:
sqlcmd -U SA -S 127.0.0.1
Du kommer att bli ombedd att ange lösenordet du konfigurerade tidigare. Efter framgångsrik autentisering kommer du att hamna i ett SQL-skal. Härifrån kan du verifiera att allt fungerar genom att skriva ut serverns version:
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)
För att avsluta SQL-skalet och komma tillbaka till kommandoraden kan du skriva:
EXIT
CentOS och Red Hat
Det enklaste sättet att få SQL Server installerad på CentOS eller Red Hat är att använda de arkiv som tillhandahålls av Microsoft. Linux-värdar måste ha minst 2 GB minne för att installera och köra SQL Server.
Innan du installerar SQL Server måste du installera och konfigurera dess beroenden. Vi behöver både Python 2 och OpenSSL 10 för att fortsätta:
sudo yum install python2 compat-openssl10
När Python 2 har installerats, konfigurera systemet att använda det som standard Python-instans:
sudo alternatives --config python
Från listan som följer väljer du numret som är kopplat till Python 2-installationen. I exemplet nedan kommer detta att vara alternativ 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
Med beroenden på plats kan du nu konfigurera SQL Server YUM-förvaret:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/mssql-server-2019.repo
Efteråt måste du konfigurera ett extra arkiv för att få tillgång till sqlcmd
och andra verktyg:
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/prod.repo
När arkiven är konfigurerade, installera SQL Server genom att skriva:
sudo yum install mssql-server mssql-tools unixODBC-devel
När installationen är klar måste du konfigurera din nya databasinstans. För att göra det, kör den medföljande mssql-conf setup
skript för att ställa in några av de grundläggande egenskaperna för ditt nya system:
sudo /opt/mssql/bin/mssql-conf setup
Du kommer att ställas en rad frågor för att konfigurera databasservern.
Först kommer den att fråga dig vilken upplaga av SQL-server du vill använda:
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):
Om du har en betallicens kan du välja lämplig version. Om du använder servern i en icke-produktionsmiljö är det säkert att välja utvecklarversionen.
Därefter måste du acceptera licensvillkoren igen:
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]:
Slutligen måste du ställa in och bekräfta ett lösenord för SQL Server-systemadministratörskontot (kallas SA-kontot på många ställen):
Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:
För att använda sqlcmd
klient för att ansluta till din SQL Server-instans, är det enklast att lägga till mssql-tools
binär katalog till din PATH
. För att konfigurera detta, skriv:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Återställ sedan en av de två filerna ovan för att utvärdera den nya PATH
för din nuvarande session:
source ~/.bashrc
Du kan nu ansluta till din databasinstans genom att skriva:
sqlcmd -U SA -S 127.0.0.1
Du kommer att bli ombedd att ange lösenordet du konfigurerade tidigare. Efter framgångsrik autentisering kommer du att hamna i ett SQL-skal. Härifrån kan du verifiera att allt fungerar genom att skriva ut serverns version:
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)
För att avsluta SQL-skalet och komma tillbaka till kommandoraden kan du skriva:
EXIT
Med Docker
Om du använder en Linux-distribution som Microsoft inte tillhandahåller paket för eller om du helt enkelt föredrar, är ett annat alternativ att köra SQL Server med Docker. Du behöver minst 2 GB minne (förmodligen åtminstone lite mer) för att köra bilden.
För att börja, se till att du har Docker Engine på ditt system. Du kan hitta detaljerade instruktioner för olika plattformar i Docker Engine-dokumentationen.
När du har Docker igång kan du hämta SQL Server Docker-avbildningen från Microsoft Container Registry genom att skriva:
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
Detta kommer att ladda ner alla nödvändiga bildlager till ditt lokala system, vilket möjliggör en snabbare uppstart.
När du är redo att starta behållaren, skriv följande kommando.
Kom ihåg att ersätta
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
SQL Server-behållaren kommer att startas i bakgrunden. Teckensträngen som visas är den nya behållarens ID.
Du kan verifiera att behållaren är igång genom att skriva:
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
Du bör se mssql
behållare bland listan. Om behållaren inte körs eller om du har problem kan du prova att titta på dess loggar för att se om det finns några användbara meddelanden:
sudo docker logs mssql
SQL Server-behållaren har inte bara databasservern installerad, den har också några av de vanliga verktygen tillgängliga, inklusive sqlcmd
kommandoradsklient. För att använda den här klienten för att ansluta till databasinstansen kan du använda docker exec
för att komma åt kommandot och autentisera mot databasen:
sudo docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"
Du kommer att autentiseras till SQL Server inuti behållaren och släppas in i ett SQL-skal. Du kan verifiera att allt är igång genom att skriva:
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)
För att avsluta SQL-sessionen och återgå till ditt vanliga skal, skriv:
EXIT
För att stänga av SQL Server-behållaren när du är klar kan du stoppa den genom att skriva:
sudo docker stop mssql
För att ta bort behållarinstansen (inklusive all data inuti!), skriv:
sudo docker rm mssql
För att bevara data i din SQL Server-behållare kan du använda en av de tekniker som beskrivs i Microsoft-dokumentationen eller ta en titt på Dockers egen dokumentation om användning av datavolymer med behållare.