sql >> Database teknologi >  >> RDS >> Sqlserver

Opsætning af en lokal SQL Server-database


Oversigt

I denne vejledning vil vi tale om, hvordan du installerer og konfigurerer en SQL Server-instans og sqlcmd kommandolinjeklient. Vi vil gennemgå, hvordan du installerer og konfigurerer disse komponenter på din computer til lokal adgang.

Denne vejledning vil dække følgende platforme:

  • Opsætning af SQL Server på Windows
  • Opsætning af SQL Server på macOS (med Docker)
  • Opsætning af SQL Server på Linux
    • Ubuntu
    • CentOS og Red Hat
    • Med Docker

Naviger til de sektioner, der matcher de platforme, du vil arbejde med.



Opsætning af SQL Server på Windows

Microsoft leverer oprindelige Windows-installationsprogrammer til SQL Server på deres websted og tilbyder forskellige versioner af SQL Server, der egner sig til forskellige formål. Til formålet med denne vejledning vil vi downloade og installere den gratis udviklerudgave. Du kan nemt opgradere til en betalt version fra Developer-udgaven, hvis du vil bruge den til produktion.

For at begynde skal du besøge Microsofts side for SQL Server. Find den sektion, der er relateret til Developer-udgaven, og klik på Download nu :

Når overførslen er fuldført, skal du dobbeltklikke på filen for at køre installationsprogrammet (du skal muligvis bekræfte, at du vil tillade, at programmet foretager ændringer på din computer).

På installationsprogrammets startskærm vil du blive bedt om at vælge, hvilken type installation du vil udføre:

Vælg Grundlæggende for at fortsætte med en konventionel installation ved at bruge de mest almindelige muligheder.

Dernæst bliver du bedt om at acceptere Developer Edition-licensvilkårene:

Når du har læst licensen og accepterer vilkårene, skal du klikke på Acceptér for at fortsætte.

Bekræft eller skift derefter installationsstedet:

Når du er klar, skal du klikke på Installer for at starte installationsprocessen.

Installationsprogrammet begynder at downloade og installere komponenter for at konfigurere SQL Server på din computer:

Når installationen er færdig, vises et skærmbillede med de aktuelle installationsegenskaber:

For at oprette forbindelse til den nye SQL Server-instans med det samme, skal du klikke på Opret forbindelse nu nederst.

Et nyt vindue vil Cmd vinduet vises og logger dig automatisk på SQL Server-instansen ved hjælp af sqlcmd klient:

Som vist i en kommentar øverst i vinduet, kan du til enhver tid oprette forbindelse til SQL Server manuelt med sqlcmd klient ved at skrive:

sqlcmd -S <yourhostname> -E

For at afslutte den aktuelle SQL-session skal du skrive:

EXIT


Opsætning af SQL Server på macOS

Selvom Microsoft ikke leverer et indbygget installationsprogram til macOS, understøtter de at køre SQL Server på macOS gennem Docker. Den primære SQL Server Docker-container er bygget ved hjælp af en Linux-container, hvilket gør det muligt for enhver vært, der er i stand til at køre Docker-containere, at køre databaseserveren.

Du skal bruge mindst 2 GB hukommelse (sandsynligvis i det mindste lidt mere) for at kunne køre billedet, men Docker selv kræver mindst 4 GB hukommelse.

For at begynde skal du sørge for at have Docker på dit system. Docker Desktop til Mac inkluderer Docker Engine og andre relaterede programmer. Hvis du ikke allerede har Docker installeret, skal du følge instruktionerne inkluderet i ovenstående link.

Når du har Docker op at køre, kan du trække SQL Server Docker-billedet fra Microsoft Container Registry ved at skrive:

docker pull mcr.microsoft.com/mssql/server:2019-latest

Dette vil downloade alle de nødvendige billedlag til dit lokale system, hvilket muliggør en hurtigere opstart.

Når du er klar til at starte containeren, skal du skrive følgende kommando.

Husk at erstatte med værdien af ​​din tilsigtede adgangskode, og vælg en værdi, der er i overensstemmelse med billedets adgangskodepolitik. På tidspunktet for denne skrivning er politikken defineret som:"Adgangskoden skal være mindst 8 tegn lang og indeholde tegn fra tre af følgende fire sæt:Store bogstaver, Små bogstaver, Grund 10 cifre og Symboler.":

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-beholderen vil blive startet op i baggrunden. Den viste tegnstreng er den nye containers ID.

Du kan bekræfte, at containeren er oppe at køre ved at skrive:

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 container på listen. Hvis containeren ikke kører, eller du har problemer, kan du prøve at se dens logfiler for at se, om der er nogle nyttige meddelelser:

docker logs mssql

SQL Server-beholderen har ikke kun databaseserveren installeret, den har også nogle af de almindelige tilgængelige værktøjer, inklusive sqlcmd kommandolinjeklient. For at bruge denne klient til at oprette forbindelse til databaseinstansen, kan du bruge docker exec for at få adgang til kommandoen og godkende mod databasen:

docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"

Du vil blive autentificeret til SQL Serveren inde i containeren og faldet ind i en SQL shell. Du kan bekræfte, at alt er oppe og køre ved at skrive:

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)

For at afslutte SQL-sessionen og vende tilbage til din normale shell, skriv:

EXIT

For at lukke SQL Server-containeren ned, når du er færdig, kan du stoppe den ved at skrive:

docker stop mssql

For at fjerne containerforekomsten (inklusive alle data indeni!), skriv:

docker rm mssql

For at bevare dataene i din SQL Server-container kan du bruge en af ​​de teknikker, der er beskrevet i Microsoft-dokumentationen eller tage et kig på Dockers egen dokumentation om brug af datavolumener med containere.



Opsætning af SQL Server på Linux

Installationsmetoderne varierer afhængigt af den Linux-distribution, du bruger. Følg afsnittet nedenfor, der matcher din Linux-distribution. Der er også instruktioner, der bruger Docker, hvis du foretrækker den konfiguration eller ønsker at bruge en distribution, der ikke er angivet.

  • Ubuntu
  • CentOS og Red Hat
  • Med Docker

Ubuntu

Den nemmeste måde at installere SQL Server på Ubuntu 20.04 er at installere fra de dedikerede arkiver fra Microsoft. Din maskine skal have mindst 2 GB hukommelse for at kunne installere og køre den nødvendige software.

For at begynde skal du tilføje en ny lagerdefinition til dit system ved at skrive:

sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"

Du skal også tilføje et separat lager for at få adgang til sqlcmd binære og andre værktøjer:

sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/20.04/prod.list)"

Tilføj derefter Microsoft-pakkesigneringsnøglen til apt så den har tillid til pakkerne i det nye lager:

wget --quiet -O - https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Med opsætning af lageret kan du installere SQL Server og sqlcmd kommandolinjeklient ved at skrive:

sudo apt install mssql-server mssql-tools unixodbc-dev

Når installationen er færdig, skal du konfigurere din nye databaseinstans. For at gøre det skal du køre den medfølgende mssql-conf opsætning script til at indstille nogle af de grundlæggende egenskaber for dit nye system:

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

Du vil blive stillet en række spørgsmål for at konfigurere databaseserveren.

Først vil den spørge dig, hvilken udgave af SQL-server du vil bruge:

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):

Hvis du har en betalt licens, kan du vælge den passende version. Hvis du bruger serveren i et ikke-produktionsmiljø, er det sikkert at vælge udviklerudgaven.

Dernæst skal du acceptere licensbetingelserne 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]:

Til sidst skal du indstille og bekræfte en adgangskode til SQL Server-systemadministratorkontoen (kaldet SA-kontoen mange steder):

Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:

For at bruge sqlcmd klient for at oprette forbindelse til din SQL Server-instans, er det nemmest at tilføje mssql-tools binær mappe til din PATH . For at konfigurere dette skal du skrive:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

Bagefter skal du genskabe en af ​​de to filer ovenfor for at evaluere den nye PATH for din nuværende session:

source ~/.bashrc

Du kan nu oprette forbindelse til din databaseinstans ved at skrive:

sqlcmd -U SA -S 127.0.0.1

Du bliver bedt om den adgangskode, du konfigurerede tidligere. Efter vellykket godkendelse vil du blive droppet ind i en SQL-skal. Herfra kan du bekræfte, at alt fungerer ved at udskrive serverens 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)

For at afslutte SQL-skallen og vende tilbage til kommandolinjen, kan du skrive:

EXIT


CentOS og Red Hat

Den nemmeste måde at få installeret SQL Server på CentOS eller Red Hat på er at bruge de lagre, der leveres af Microsoft. Linux-værter skal have mindst 2 GB hukommelse for at installere og køre SQL Server.

Før du installerer SQL Server, skal du installere og konfigurere dens afhængigheder. Vi har brug for både Python 2 og OpenSSL 10 for at fortsætte:

sudo yum install python2 compat-openssl10

Efter Python 2 er installeret, konfigurer systemet til at bruge det som standard Python-forekomst:

sudo alternatives --config python

Vælg nummeret, der er knyttet til Python 2-installationen, på listen, der følger. I eksemplet nedenfor vil dette være mulighed 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 afhængighederne på plads kan du nu konfigurere SQL Server YUM-lageret:

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/mssql-server-2019.repo

Bagefter skal du konfigurere et ekstra lager for at få adgang til sqlcmd og andre værktøjer:

sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/prod.repo

Når lagrene er konfigureret, skal du installere SQL Server ved at skrive:

sudo yum install mssql-server mssql-tools unixODBC-devel

Når installationen er færdig, skal du konfigurere din nye databaseinstans. For at gøre det skal du køre den medfølgende mssql-conf opsætning script til at indstille nogle af de grundlæggende egenskaber for dit nye system:

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

Du vil blive stillet en række spørgsmål for at konfigurere databaseserveren.

Først vil den spørge dig, hvilken udgave af SQL-server du vil bruge:

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):

Hvis du har en betalt licens, kan du vælge den passende version. Hvis du bruger serveren i et ikke-produktionsmiljø, er det sikkert at vælge udviklerudgaven.

Dernæst skal du acceptere licensbetingelserne 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]:

Til sidst skal du indstille og bekræfte en adgangskode til SQL Server-systemadministratorkontoen (kaldet SA-kontoen mange steder):

Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:

For at bruge sqlcmd klient for at oprette forbindelse til din SQL Server-instans, er det nemmest at tilføje mssql-tools binær mappe til din PATH . For at konfigurere dette skal du skrive:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

Bagefter skal du genskabe en af ​​de to filer ovenfor for at evaluere den nye PATH for din nuværende session:

source ~/.bashrc

Du kan nu oprette forbindelse til din databaseinstans ved at skrive:

sqlcmd -U SA -S 127.0.0.1

Du bliver bedt om den adgangskode, du konfigurerede tidligere. Efter vellykket godkendelse vil du blive droppet ind i en SQL-skal. Herfra kan du bekræfte, at alt fungerer ved at udskrive serverens 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)

For at afslutte SQL-skallen og vende tilbage til kommandolinjen, kan du skrive:

EXIT


Med Docker

Hvis du bruger en Linux-distribution, som Microsoft ikke leverer pakker til, eller hvis du blot foretrækker det, er en anden mulighed at køre SQL Server med Docker. Du skal bruge mindst 2 GB hukommelse (sandsynligvis mindst lidt mere) for at kunne køre billedet.

For at begynde skal du sørge for at have Docker Engine på dit system. Du kan finde detaljerede instruktioner for forskellige platforme i Docker Engine-dokumentationen.

Når du har Docker op at køre, kan du trække SQL Server Docker-billedet fra Microsoft Container Registry ved at skrive:

sudo docker pull mcr.microsoft.com/mssql/server:2019-latest

Dette vil downloade alle de nødvendige billedlag til dit lokale system, hvilket muliggør en hurtigere opstart.

Når du er klar til at starte containeren, skal du skrive følgende kommando.

Husk at erstatte med værdien af ​​din tilsigtede adgangskode, og vælg en værdi, der er i overensstemmelse med billedets adgangskodepolitik. På tidspunktet for denne skrivning er politikken defineret som:"Adgangskoden skal være mindst 8 tegn lang og indeholde tegn fra tre af følgende fire sæt:Store bogstaver, Små bogstaver, Grund 10 cifre og Symboler.":

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-beholderen vil blive startet op i baggrunden. Den viste tegnstreng er den nye containers ID.

Du kan bekræfte, at containeren er oppe at køre ved at skrive:

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 container på listen. Hvis containeren ikke kører, eller du har problemer, kan du prøve at se dens logfiler for at se, om der er nogle nyttige meddelelser:

sudo docker logs mssql

SQL Server-beholderen har ikke kun databaseserveren installeret, den har også nogle af de almindelige tilgængelige værktøjer, inklusive sqlcmd kommandolinjeklient. For at bruge denne klient til at oprette forbindelse til databaseinstansen, kan du bruge docker exec for at få adgang til kommandoen og godkende mod databasen:

sudo docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"

Du vil blive autentificeret til SQL Serveren inde i containeren og faldet ind i en SQL shell. Du kan bekræfte, at alt er oppe og køre ved at skrive:

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)

For at afslutte SQL-sessionen og vende tilbage til din normale shell, skriv:

EXIT

For at lukke SQL Server-containeren ned, når du er færdig, kan du stoppe den ved at skrive:

sudo docker stop mssql

For at fjerne containerforekomsten (inklusive alle data indeni!), skriv:

sudo docker rm mssql

For at bevare dataene i din SQL Server-container kan du bruge en af ​​de teknikker, der er beskrevet i Microsoft-dokumentationen eller tage et kig på Dockers egen dokumentation om brug af datavolumener med containere.





  1. Bruger du mysql concat() i WHERE-sætning?

  2. Hvad er nyt i MySQL Galera Cluster 4.0

  3. Sådan "Unhex" et nummer i MySQL

  4. Er java.sql.Timestamp tidszonespecifik?