How to Install SQL Server on Windows: 2026 Setup Guide 💾
SQL Server installs cleanly on Windows — as long as you make the right choices on about four screens. That's really it. The rest of the wizard is next-next-next.
This guide walks through how to install SQL Server in Windows from download to first successful query. You'll pick an edition, run the setup wizard, install SQL Server Management Studio (SSMS) separately, connect to your local instance, and verify everything actually works. I'll also cover the errors that trip up most first-timers, because "installation succeeded" and "I can connect" are two different things.
Quick answer: To install SQL Server in Windows, download the correct SQL Server edition from Microsoft, run the installer, choose Basic or Custom setup, select the Database Engine features, complete the configuration steps, then install SQL Server Management Studio (SSMS) separately. After setup, open SSMS and connect to your local instance to verify the installation works.
SQL Server installation prerequisites for Windows
Five minutes of prep saves an hour of troubleshooting. Really.
Supported Windows versions for SQL Server
Current SQL Server releases (2019, 2022, and newer) run on Windows 10, Windows 11, and supported Windows Server editions — Windows Server 2016 and later, generally speaking. Home editions of Windows 10/11 work fine for Express and Developer. If you're unsure what you're running, here's how to check your Windows version before you download anything.
One hard rule: you need 64-bit Windows. Microsoft dropped 32-bit installers years ago. And exact OS support shifts slightly with each release, so Microsoft's own system requirements page is the final word.
Minimum hardware and disk space requirements
- RAM: 2 GB is the technical minimum. 4 GB works. 8 GB or more is what you actually want if you're doing anything real.
- Disk: plan for 6–10 GB free. The engine itself needs less, but installer temp files, SSMS, and your databases add up fast.
- CPU: any modern x64 processor at 1.4 GHz+. Not a bottleneck in practice.
- Storage type: SSD strongly preferred. Databases are I/O hungry, and installing on a spinning disk feels like wading through mud.
What to prepare before running the installer
You need a local administrator account. Not "an account that can click yes on UAC" — an actual admin. Setup writes services, registry keys, and directories that a standard user can't touch.
Two more things people forget. First, pause Windows Update if it's mid-download; a forced reboot during setup is genuinely annoying to recover from. Second, aggressive third-party antivirus sometimes locks installer files and causes vague failures. I've watched a setup hang for twenty minutes because of a real-time scanner. If that happens, temporarily disable it, install, then re-enable.
You'll also want PowerShell handy for a few checks later — here's how to run PowerShell as administrator if you haven't done that before.
Once your system is ready, the next decision is choosing the right SQL Server edition.
Which SQL Server edition should you install on Windows?
This is where most people go wrong, and it's a five-minute mistake that costs a reinstall. Three free options matter for local work.
| Edition | Cost | Best for | Main limits | Recommended? |
|---|---|---|---|---|
| Express | Free, forever | Small apps, light production, learning basics | 10 GB per database, ~1.4 GB RAM for the engine, 4 cores, no SQL Server Agent | Yes, for small real apps |
| Developer | Free (non-production only) | Learning SQL, development, testing full features | Licence forbids production use. No technical limits otherwise | Best for most learners |
| Evaluation | Free for 180 days | Trialling Enterprise features before buying | Expires and stops working after the trial window | Only for short-term evaluation |
SQL Server Express for lightweight projects
Express is the free, always-free tier. It'll happily run a small web app, an inventory tool, or a personal project. The 10 GB per-database cap sounds tight but takes a surprisingly long time to hit with normal data. What stings more is the missing SQL Server Agent — no built-in job scheduler, so automated backups need a workaround.
SQL Server Developer for learning and development
Developer edition is functionally identical to Enterprise. Same features, same everything, zero cost — the only catch is a licence that says "not production." If you're learning SQL, following a course, or building something you'll deploy later, install Developer. No resource ceilings to bump into while you learn.
Pro tip: If you're learning SQL or building locally, Developer edition is usually the best choice because it includes full features at no cost for non-production use.
Evaluation edition for short-term testing
Evaluation gives you Enterprise features for 180 days, then it stops. Useful if you're benchmarking Enterprise-only capabilities for a purchase decision. For everything else it's a trap — nobody wants a database that expires.
There's also LocalDB, a stripped-down developer runtime that starts on demand and has no service to manage. It ships with Visual Studio. Fine for tiny app-side development, not a substitute for the real engine. If you want background on what the product actually does, our explainer on what SQL Server is fills that in, and SQL Server vs MySQL is worth a read if you're still comparing platforms.
How to download SQL Server for Windows safely
Get it from Microsoft. Directly. Not a "download portal," not a mirror, not a torrent of an ISO. Database binaries from unverified sources are exactly how you end up with something nasty running as SYSTEM.
Search for the official SQL Server downloads page on microsoft.com, pick Developer or Express, and you'll get a small bootstrapper file — usually a few megabytes. Run it and you get three choices.
| Option | Best for | Pros | Cons |
|---|---|---|---|
| Basic | Fastest possible setup, default everything | Few clicks, hard to get wrong | No control over instance name or authentication mode |
| Custom | Most readers of this guide | Full wizard, you choose features, instance, auth | Longer, more screens to understand |
| Download Media | Offline installs, multiple machines, VPS deployments | Saves an ISO/CAB you can reuse without internet | Extra step, larger download |
Pick Custom. Yes, it's more screens. But those screens are exactly where you set the things you'll need to know later — instance name, authentication mode, admin accounts. Basic makes those decisions silently and you'll spend an evening figuring out what it chose.
Install SQL Server on Windows step by step
Here's the actual walkthrough. Custom path, Developer or Express, on Windows 10/11 or Windows Server.
1. Run the installer as administrator
Right-click the downloaded file and choose Run as administrator. Don't skip this even if your account is already an admin. Pick an installation folder when prompted (the default is fine), and let it pull down the setup media. That download is a few gigabytes for Developer, so grab coffee.
2. Choose a new standalone installation
The SQL Server Installation Center opens. Click Installation in the left pane, then New SQL Server standalone installation or add features to an existing installation. Accept the licence terms. Let it check for updates — usually harmless, occasionally saves you a patch later.
3. Clear the setup support rules
Setup runs a quick environment scan. Green checkmarks mean go. A yellow warning about Windows Firewall is normal and expected — it's just telling you remote connections will be blocked, which is fine for local use. Red X means stop and read the message; usually it's pending reboot or insufficient permissions.
4. Select Database Engine features
The Feature Selection screen looks intimidating. It isn't. Check Database Engine Services and move on.
Add these only if you know you need them:
- SQL Server Replication — syncing data between servers
- Full-Text Search — advanced text searching inside columns
- Integration Services — ETL and data import packages
Every extra feature is more disk, more services, more surface area. Start minimal. You can rerun setup later to add things.
5. Configure the instance name
An instance is a single running copy of the database engine. You can have several on one machine, each isolated.
You get two options: Default instance (named MSSQLSERVER, connected to as just localhost) or Named instance (something like SQLDEV, connected to as localhost\SQLDEV).
If this is your first and only SQL Server on the machine, choose Default instance. Simpler connection strings, fewer things to remember. Note that Express installs default to a named instance called SQLEXPRESS — that's why so many tutorials show COMPUTERNAME\SQLEXPRESS.
Whatever you pick, write it down. Seriously. Half the "I can't connect" problems I've helped with trace back to a forgotten instance name.
6. Leave service accounts alone
The Server Configuration screen lists service accounts and startup types. For a local or single-server install, the defaults are correct — SQL Server runs under a virtual service account with exactly the permissions it needs. Confirm SQL Server Database Engine is set to Automatic startup so it comes back after a reboot.
There's a checkbox for Instant File Initialization. Tick it if you'll be creating large database files; it speeds that up noticeably. Minor security trade-off, irrelevant for a dev box.
7. Choose Windows Authentication or Mixed Mode
This is the screen that matters most.
Windows Authentication mode means only Windows accounts can log in. No passwords stored in SQL Server, nothing to leak. It's the safer default and what you should choose for local development.
Mixed Mode additionally enables SQL Server logins — including the built-in sa account. You need this when an application connects with a username and password rather than a Windows identity, or when clients connect from non-domain machines.
Warning: Don't enable Mixed Mode unless you need SQL logins. If you do, set a strong
sapassword immediately — a weak one on a reachable server is one of the most-scanned attack targets on the internet.
Before you click Next, hit Add Current User under "Specify SQL Server administrators." Skip this and you'll finish the install with no way to log in. It happens more than you'd think.
8. Finish and review the status page
Click Install. Expect 10–25 minutes depending on your disk and which features you selected. When it completes you get a status page listing each component with Succeeded or Failed.
Read it. If anything failed, the log path is printed right there — usually under C:\Program Files\Microsoft SQL Server\\Setup Bootstrap\Log\. Reboot only if setup asks.
Quick summary: Install Database Engine Services, add yourself as SQL Server administrator, note your instance name. Those three things cover 90% of what goes wrong.
How to install SQL Server Management Studio (SSMS)
Here's the thing that confuses nearly every beginner: SQL Server and SSMS are separate downloads. You just installed a database engine with no graphical interface. It's running as a Windows service, quietly, invisibly. Nothing opened. That's normal.
Key takeaway: Many first-time users think the installation failed because there's no application to open. The engine has no UI — SSMS is the UI, and it's a separate install.
Download and install SSMS on Windows
- In the SQL Server Installation Center, click Install SQL Server Management Tools — it opens Microsoft's SSMS download page. Or search "SSMS download" and go to microsoft.com directly.
- Run the downloaded installer (right-click, Run as administrator).
- Accept the default install location and click Install.
- Wait. This one genuinely takes 5–15 minutes and the progress bar sits still for long stretches. It's not frozen.
- Reboot if prompted.
[Image >>> SQL Server Management Studio installer window showing the install location field and Install button]
SSMS gives you a database object browser, a query editor with IntelliSense, backup and restore wizards, user management, and execution plan viewers. You can technically manage SQL Server with sqlcmd from the command line, but as a beginner you'd be making life hard for no reason. Azure Data Studio is a lighter cross-platform alternative if you prefer — it's fine, just less complete.
How to connect to SQL Server locally in SSMS
Time to prove the install worked.
Finding your server name
Launch SSMS. A Connect to Server dialog appears immediately. Server type stays Database Engine. For server name, one of these will work:
localhost— default instance, simplest option.— a single dot, shorthand for the local default instanceCOMPUTERNAME— your machine's name, also fine for a default instanceCOMPUTERNAME\SQLEXPRESS— the standard form for an Express named instancelocalhost\YOURINSTANCE— any named instance you created
Connect with Windows Authentication
Leave Authentication as Windows Authentication — your logged-in account is used automatically, no password field. Click Connect.
Success looks like this: Object Explorer appears on the left with your server name at the top and folders beneath it — Databases, Security, Server Objects, Management. If you expand Databases you'll see master, model, msdb, and tempdb. Those are system databases. Don't touch them.
Run a test query
Press Ctrl+N for a new query window, then type:
SELECT @@VERSION;Hit F5. You should get a single row showing your edition, version number, build, and OS. That output is your proof — engine running, authentication working, query processor responding.
Congratulations, you have a working database server. From here, our SQL cheat sheet is a solid next stop for actual query syntax.
Configure SQL Server after installation on Windows
A few checks worth doing now rather than debugging later.
Check the service is running
Press Win+R, type services.msc, press Enter. Look for SQL Server (MSSQLSERVER) or SQL Server (YOURINSTANCE). Status should be Running, Startup Type should be Automatic. If it's stopped, right-click and Start.
You'll also find SQL Server Configuration Manager in your Start menu. That's the proper tool for service and network settings — it applies changes in the right order and updates registry permissions correctly, which services.msc doesn't always do.
Enable TCP/IP only if you need remote connections
Local connections use shared memory and named pipes. TCP/IP is off by default on Express and sometimes disabled elsewhere — and for a local dev box, that's the correct state. Leave it.
If another machine needs to connect, open Configuration Manager → SQL Server Network Configuration → Protocols for [instance], enable TCP/IP, and restart the SQL Server service. SQL Server listens on port 1433 for default instances; named instances use a dynamic port negotiated through the SQL Server Browser service.
Remote access also means a firewall rule — here's how to open a port in Windows Firewall. Do this deliberately and only for the IPs that need it. An internet-exposed 1433 gets brute-forced within hours; I'm not exaggerating. If you're going down that road, read up on how to secure a Windows Server first.
Common SQL Server setup errors in Windows and how to fix them
| Problem | Likely cause | Fix |
|---|---|---|
| Installer hangs or fails partway | Not elevated, pending reboot, antivirus locking files, low disk | Reboot, rerun as administrator, free up 10 GB, temporarily disable real-time scanning, then check the setup log |
| SQL Server service won't start | Corrupt install, insufficient memory, service account permission loss | Open the SQL error log in the instance's LOG folder, verify free RAM, reset the service account in Configuration Manager |
| SSMS can't connect to the instance | Wrong instance name (most common by far), service stopped | Confirm the name in Configuration Manager, try localhost and COMPUTERNAME\SQLEXPRESS, verify the service is Running |
| Login failed for user 'sa' | Mixed Mode not enabled, or sa disabled by default |
Connect with Windows Auth, right-click server → Properties → Security → Mixed Mode, restart the service, then enable sa under Security → Logins |
| "A network-related or instance-specific error occurred" | TCP/IP disabled or firewall blocking (remote only) | Enable TCP/IP, start SQL Server Browser for named instances, add the firewall rule |
| Setup fails with a cryptic feature error | Damaged Windows component or .NET issue | Run DISM /Online /Cleanup-Image /RestoreHealth — see our guide on repairing Windows with DISM — then retry |
One habit worth building: when setup fails, the summary log is your friend. It's a text file with a timestamped name in the Setup Bootstrap\Log folder, and the actual error is usually near the bottom. Searching that exact error string beats guessing every time.
Running SQL Server on a Windows VPS instead of a local PC
A laptop install is perfect for learning. It's a poor host for anything anyone else depends on — because you close the lid, you reboot, your ISP changes your IP, and your database vanishes.
When a VPS makes more sense than localhost
- Always-on databases that an app or reporting tool queries around the clock
- Remote team access — several developers hitting one shared dev database
- Staging environments that mirror production without touching production
- Small business applications with a SQL Server backend
- Scheduled jobs and backups that need to run whether or not you're at your desk
| Criteria | Local Windows PC | Windows VPS |
|---|---|---|
| Uptime | Whenever the machine is on | 24/7 in a datacentre |
| Remote access | Awkward, needs port forwarding | Built in via RDP and a static IP |
| Resource contention | Competes with your browser and IDE | Dedicated allocated RAM and vCPU |
| Storage | Whatever's in the machine | SSD/NVMe as standard |
| OS suitability | Desktop Windows, no server features | Windows Server, built for services |
| Backups | Manual, your responsibility | Snapshot options available |
| Best for | Learning, prototyping | Shared dev, staging, live apps |
What to look for in a Windows VPS for SQL Server
Prioritise RAM and storage speed over core count. SQL Server caches aggressively — it'll take every gigabyte you give it, and consistent memory does more for query performance than extra vCPUs for typical workloads. Start at 4 GB for Express-scale work, 8 GB+ for anything meaningful.
Then: NVMe or SSD storage, full administrator/RDP access so you can run the installer yourself, a licensed Windows Server build, and a backup or snapshot option.
The install process is identical on a VPS — connect over RDP, download the installer, run the same wizard. If you're new to that workflow, our guide on how to set up a Windows VPS covers the groundwork, and this comparison of the best Windows VPS providers is worth a skim before you commit. MonoVM's Windows VPS hosting plans come with full admin access and NVMe storage, which is exactly what a database wants.
Final checklist after SQL Server installation
Run through this and you're genuinely done:
- SQL Server service shows Running in
services.msc, startup type Automatic - SSMS is installed and launches
- You can connect to your instance and see Object Explorer populate
SELECT @@VERSION;returns your edition and build- Your instance name is written down somewhere you'll find it
- You know which authentication mode you chose and why
- TCP/IP and firewall left closed unless you deliberately need remote access
Next steps: right-click Databases → New Database and create your first one. Restore a sample database like AdventureWorks if you're learning. And set up a backup routine before you have data worth losing — not after.
That's how to install SQL Server in Windows, end to end. The wizard is longer than it needs to be, but only four screens carry real weight: features, instance name, authentication mode, and admin accounts. Get those right and the rest takes care of itself.