Slik installerer du SQL Server – steg for steg
Å installere SQL Server tar en halvtime. Å installere det riktig tar litt mer omtanke: valgene du gjør i installasjonsveiviseren – utgave, sortering (collation), tjenestekontoer, plassering av filer og tempdb – er vanskelige å endre senere. Denne guiden går gjennom installasjonen på Windows steg for steg, viser hvordan du kjører SQL Server på Linux og i Docker, og gir deg sjekklisten over hva du bør konfigurere før serveren tas i bruk.
- Bruk Developer (gratis) til utvikling og test, Express (gratis) til små produksjonsløsninger og Standard eller Enterprise når du trenger mer.
- Velg sortering (collation) med omhu – den er tungvint å endre etter installasjonen.
- Legg data, logg, tempdb og backup på separate disker eller volumer.
- Etter installasjonen: installer siste kumulative oppdatering, sett max server memory, sjekk MAXDOP og sett opp backup før første database tas i bruk.
- SQL Server Management Studio (SSMS) installeres separat.
Før du starter
Velg utgave
SQL Server finnes i flere utgaver, og installasjonsprogrammet er det samme for alle – det er lisensnøkkelen (eller valget av gratisutgave) som bestemmer hva du får. Kort oppsummert:
- Developer: Alle funksjoner, gratis, men kun lov å bruke til utvikling og test – ikke produksjon. Fra SQL Server 2025 finnes den både som Enterprise Developer og Standard Developer, slik at du kan teste mot den utgaven du faktisk skal kjøre i produksjon.
- Express: Gratis også i produksjon, men med begrensninger på databasestørrelse, minne og prosessorkjerner.
- Standard og Enterprise: Lisensierte utgaver for produksjon.
- Evaluation: Full Enterprise-funksjonalitet i 180 dager.
Forskjellene og prisene er forklart i detalj i guiden om utgaver og lisensiering.
Maskinvare og operativsystem
Microsofts minimumskrav er beskjedne, men minimum er sjelden det du vil ha. Noen tommelfingerregler for en produksjonsserver:
- Minne: SQL Server bruker minne som cache for data. Jo mer av den aktive delen av databasene som får plass i minnet, jo mindre må leses fra disk. 16 GB er et rimelig utgangspunkt for en liten server, og det er vanlig med langt mer.
- Disk: SSD/NVMe for data, logg og tempdb. Transaksjonsloggen skrives sekvensielt og er følsom for skrivelatens.
- CPU: Lisensieringen skjer ofte per kjerne, så færre og raskere kjerner gir ofte mer ytelse per lisenskrone enn mange trege.
- Operativsystem: En støttet versjon av Windows Server (eller Windows 10/11 for utvikling). For Linux støttes blant annet Ubuntu, Red Hat Enterprise Linux og SUSE. Sjekk dokumentasjonen for akkurat din SQL Server-versjon.
Planlegg diskoppsettet
Det klassiske oppsettet er å skille filtypene fra hverandre, både for ytelse og for å unngå at én full disk tar ned alt annet:
| Volum | Innhold | Kommentar |
|---|---|---|
| C: | Windows og SQL Server-programfilene | Ikke legg databaser her. |
| D: | Datafiler (.mdf, .ndf) | Tilfeldig lesing og skriving. |
| L: | Loggfiler (.ldf) | Sekvensiell skriving, lav latens er viktig. |
| T: | tempdb | Ofte det mest belastede volumet. |
| B: | Lokal backup | Skal i tillegg kopieres til et annet sted. |
På moderne SAN- eller skylagring der alt ligger på samme underliggende lagring er ytelsesgevinsten mindre, men det er fortsatt nyttig å skille volumene for å kunne overvåke og utvide dem hver for seg. Formater datavolumene med 64 KB allokeringsenhet (NTFS eller ReFS).
Installasjon på Windows, steg for steg
1. Last ned og start installasjonen
Last ned installasjonsprogrammet fra Microsoft (eller ISO-filen fra Volume Licensing Service Center hvis organisasjonen har volumlisens). Velg Custom eller Download Media fremfor Basic, slik at du får styre valgene selv. Start setup.exe, velg Installation og New SQL Server standalone installation.
2. Lisens og oppdateringer
Skriv inn produktnøkkelen eller velg en gratisutgave. La installasjonsprogrammet hente siste oppdateringer hvis serveren har internettilgang, så slipper du å installere den kumulative oppdateringen separat etterpå.
3. Velg funksjoner
Installer bare det du trenger. Hver ekstra komponent er en tjeneste som må patches og sikres.
- Database Engine Services: Selve databasemotoren. Alltid med.
- Full-Text and Semantic Extractions for Search: Bare hvis du skal bruke fulltekstsøk.
- Replication, PolyBase, Machine Learning Services: Bare ved konkret behov.
- Analysis Services og Integration Services: Egne produkter med egne tjenester – installer dem gjerne på en egen server.
Merk at Reporting Services ikke lenger følger med fra SQL Server 2025; Microsoft henviser til Power BI Report Server for lokale rapporter.
4. Instans: standard eller navngitt
En server kan kjøre flere SQL Server-instanser side om side. Den første er som regel standardinstansen (MSSQLSERVER), som klienter når med bare servernavnet. En navngitt instans nås med SERVER\INSTANS og bruker normalt en dynamisk port som slås opp via tjenesten SQL Server Browser. Velg standardinstans med mindre du har en god grunn til noe annet.
5. Tjenestekontoer og Instant File Initialization
Standardvalget er virtuelle kontoer (NT Service\MSSQLSERVER og NT Service\SQLSERVERAGENT), og det er et godt valg på en frittstående server. Trenger tjenesten tilgang til nettverksressurser – for eksempel en backupshare – kan du bruke en domenekonto eller en group Managed Service Account (gMSA), som slipper passordbytte.
Huk av for Grant Perform Volume Maintenance Task privilege. Det slår på Instant File Initialization, slik at datafiler kan opprettes og vokse uten at Windows først må fylle dem med nuller. Det gjør gjenoppretting og autogrowth betydelig raskere.
6. Sortering (collation) – valget som er vanskelig å angre
Serverens sortering bestemmer hvordan tekst sammenlignes og sorteres i systemdatabasene og i tempdb, og den blir standard for nye databaser. Å endre den senere krever i praksis at systemdatabasene bygges på nytt.
- For norske data er
Danish_Norwegian_CI_AS(eller den nyereDanish_Norwegian_100_CI_AS) vanlig. Den sorterer æ, ø og å riktig. - Mange tredjepartssystemer krever en bestemt sortering, ofte
SQL_Latin1_General_CP1_CI_ASellerLatin1_General_CI_AS. Sjekk leverandørens krav før du installerer. CIbetyr ufølsom for store og små bokstaver (case insensitive),ASfølsom for aksenter (accent sensitive).
7. Autentisering og administratorer
Velg Windows authentication mode hvis alle klienter kan logge inn med Windows- eller domenekontoer. Trenger du SQL-pålogginger (brukernavn og passord, for eksempel for Linux-applikasjoner eller eksterne systemer), velger du Mixed Mode og gir sa et langt, tilfeldig passord. Legg til en AD-gruppe for databaseadministratorer som SQL Server administrators, ikke enkeltpersoner. Se også guiden om sikkerhet.
8. Datakataloger, tempdb og minne
Under Database Engine Configuration finnes flere faner du bør gå gjennom:
- Data Directories: Pek datafiler, logg og backup til volumene du planla.
- TempDB: Installasjonen foreslår én datafil per logiske kjerne, opptil åtte. Det er et godt utgangspunkt. Gi filene lik størrelse og lik vekst.
- MaxDOP: Installasjonen foreslår en verdi basert på antall kjerner og NUMA-noder. Behold forslaget.
- Memory: Velg Recommended eller sett en egen grense, slik at operativsystemet beholder nok minne.
9. Fullfør og verifiser
Når installasjonen er ferdig, kobler du til med SSMS og kjører:
SELECT @@VERSION AS Versjon,
SERVERPROPERTY('Edition') AS Utgave,
SERVERPROPERTY('ProductUpdateLevel') AS Oppdateringsnivå,
SERVERPROPERTY('Collation') AS Sortering;
Verktøyene: SSMS og VS Code
SQL Server Management Studio (SSMS) er hovedverktøyet for administrasjon og installeres separat. Fra versjon 21 installeres og oppdateres SSMS via Visual Studio Installer. Azure Data Studio er avviklet; Microsoft anbefaler i stedet mssql-utvidelsen for Visual Studio Code hvis du vil ha et lett, plattformuavhengig verktøy. For skripting og automatisering er PowerShell-modulen dbatools nærmest uunnværlig.
Automatisk installasjon fra kommandolinjen
Skal du installere mange servere, eller vil du ha et dokumentert og repeterbart oppsett, kan installasjonen kjøres uten brukergrensesnitt. Den enkleste måten er å gå gjennom veiviseren én gang og ta vare på ConfigurationFile.ini, som installasjonsprogrammet viser stien til på siste side før du trykker Install. Du kan også angi alt på kommandolinjen:
setup.exe /Q /ACTION=Install /IACCEPTSQLSERVERLICENSETERMS ^
/FEATURES=SQLENGINE ^
/INSTANCENAME=MSSQLSERVER ^
/SQLCOLLATION=Danish_Norwegian_CI_AS ^
/SQLSYSADMINACCOUNTS="DOMENE\SQL-Administratorer" ^
/SQLSVCINSTANTFILEINIT=True ^
/INSTALLSQLDATADIR="D:\SQLData" ^
/SQLUSERDBLOGDIR="L:\SQLLog" ^
/SQLTEMPDBDIR="T:\TempDB" ^
/SQLBACKUPDIR="B:\Backup" ^
/UPDATEENABLED=True
SQL Server på Linux
Siden SQL Server 2017 kjører databasemotoren også på Linux. Funksjonaliteten er i hovedsak den samme, men enkelte funksjoner (blant annet deler av replikering, FILESTREAM og noen Windows-spesifikke integrasjoner) mangler eller fungerer annerledes. Installasjonen skjer via pakkebehandleren etter at Microsofts pakkebrønn er lagt til:
# Ubuntu: etter at Microsofts pakkebrønn er lagt til
sudo apt-get update
sudo apt-get install -y mssql-server
# Velg utgave, sett sa-passord og start tjenesten
sudo /opt/mssql/bin/mssql-conf setup
systemctl status mssql-server
Innstillinger som minnegrense og standardkataloger settes med mssql-conf, for eksempel sudo /opt/mssql/bin/mssql-conf set memory.memorylimitmb 8192.
SQL Server i Docker
For utvikling og automatiske tester er en container den raskeste måten å få en SQL Server på – oppe og gå på under ett minutt:
docker run -d --name sql1 ^
-e "ACCEPT_EULA=Y" ^
-e "MSSQL_SA_PASSWORD=Et-Langt-Og-Sterkt-Passord-123" ^
-e "MSSQL_PID=Developer" ^
-p 1433:1433 ^
-v sqldata:/var/opt/mssql ^
mcr.microsoft.com/mssql/server:2025-latest
Volumet (-v) sørger for at databasene overlever at containeren slettes. I .NET-testprosjekter er pakken Testcontainers.MsSql et praktisk alternativ: den starter en ny container for testkjøringen og rydder opp etterpå.
Sjekkliste etter installasjonen
En nyinstallert SQL Server fungerer, men flere standardinnstillinger er tilpasset maskinvare fra en annen tid. Gå gjennom denne listen før serveren tas i bruk:
- Installer siste kumulative oppdatering (CU). Microsoft lager ikke lenger service packs; feilrettinger kommer som kumulative oppdateringer, og sikkerhetsrettinger som GDR-er.
- Sett max server memory. Se forklaringen under.
- Kontroller MAXDOP og cost threshold for parallelism. Standardverdien 5 for cost threshold er for lav for de fleste systemer; 50 er et vanlig utgangspunkt.
- Slå på backupkomprimering som standard.
- Vurder optimize for ad hoc workloads hvis applikasjonene sender mange unike spørringer.
- Sett opp backup og vedlikeholdsjobber – se backup og vedlikehold.
- Konfigurer Database Mail, operatører og varsler, slik at du får beskjed når noe går galt.
- Åpne nettverket kontrollert: Slå på TCP/IP i SQL Server Configuration Manager hvis det er av, og åpne port 1433 i brannmuren kun for de maskinene som trenger det.
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
-- Eksempel for en server med 64 GB minne som bare kjører SQL Server
EXEC sp_configure 'max server memory (MB)', 57344;
EXEC sp_configure 'cost threshold for parallelism', 50;
EXEC sp_configure 'backup compression default', 1;
EXEC sp_configure 'optimize for ad hoc workloads', 1;
RECONFIGURE;
Vanlige spørsmål
Hvorfor bruker SQL Server nesten alt minnet på serveren?
Det er tilsiktet. SQL Server bruker minnet som cache (buffer pool) for datasider og spørringsplaner, og gir det bare motvillig tilbake. Ubrukt minne er bortkastet minne, så fra SQL Servers ståsted er dette god oppførsel. Problemet oppstår når operativsystemet eller andre programmer på samme server blir presset. Derfor setter du max server memory: en vanlig tommelfingerregel er å la operativsystemet beholde 10 prosent, men minst 4 GB, og mer hvis andre tjenester kjører på serveren.
Kan jeg ha flere versjoner av SQL Server på samme maskin?
Ja, som separate instanser. Det er vanlig på utviklermaskiner, men i produksjon er det enklere å drifte én instans per server (eller per virtuell maskin).
Hvilken port bruker SQL Server?
Standardinstansen lytter på TCP-port 1433. Navngitte instanser bruker som standard en dynamisk port, og SQL Server Browser-tjenesten svarer på UDP-port 1434 med hvilken port instansen bruker. I produksjon er det vanlig å gi også navngitte instanser en fast port.
Kan jeg oppgradere fra Express til Standard uten å installere på nytt?
Ja. Kjør installasjonsprogrammet, velg Maintenance og Edition Upgrade, og skriv inn den nye produktnøkkelen. Databasene beholdes.