In short
Install SQL Server 2025 on a Windows Server VPS by choosing the right edition, running the full Custom setup wizard, configuring Mixed Mode only when your app needs SQL logins, setting clean data/log/backup paths, tuning TempDB, capping max server memory, applying the latest cumulative update, and opening TCP 1433 only to trusted IPs or private networks. Use Standard Developer for development and testing; use paid Standard or Enterprise for production.
Which edition should you install?
SQL Server 2025 introduced a clearer edition model. The most important decision is whether the server is for development, staging, testing, or production.
| Edition | Production use? | Main limits | Best for |
|---|---|---|---|
| Standard Developer | No | Same feature set as Standard, licensed for development and test only | Building and validating apps that will later run on paid Standard |
| Enterprise Developer | No | Same feature set as Enterprise, licensed for development and test only | Testing Enterprise-only features without production use |
| Express | Yes | 1 socket / 4 cores, 1,410 MB buffer pool, 50 GB per relational database | Small production databases, lightweight apps, learning |
| Standard | Yes | 32 cores, 256 GB buffer pool | Most SMB and mid-market production workloads |
| Enterprise | Yes | Operating system maximums for many scale limits | Large databases, advanced HA/DR, heavy analytics, Enterprise-only features |
| Evaluation | Temporary | 180-day evaluation | Testing Enterprise features before licensing |
This guide uses Standard Developer because it is free and practical for development, staging, and install validation. The installation flow for paid Standard is almost identical; the difference is the product key and licensing step.
Do not run Developer edition in production. Developer editions are licensed for development and testing only.

What you will build
This guide installs a clean SQL Server 2025 instance on a Windows Server VPS.
The target setup:
Windows Server VPS ↓ SQL Server 2025 ├── Database Engine ├── SQL Server Agent ├── TempDB ├── Data files ├── Log files ├── Backups └── Firewall / private access
For a small workload, the app and SQL Server can run on one VPS. As the workload grows, the cleaner production path is to split the application and database onto separate VMs connected over a private network.

What you'll need
Before starting, prepare:
- a Raff Windows Server VPS or similar Windows Server VPS;
- Windows Server 2022 or Windows Server 2025;
- local Administrator access;
- no pending Windows reboot;
- SQL Server 2025 installation media;
- SQL Server Management Studio on your workstation or on the server;
- a password manager for the
sapassword if you choose Mixed Mode; - a backup plan before production data is added.
Recommended starting specs depend on the workload.
| Workload | Suggested starting point |
|---|---|
| Learning or test install | 2–4 vCPU / 4–8 GB RAM |
| Small app or staging database | 4 vCPU / 8–16 GB RAM |
| Small production database | 4–8 vCPU / 16–32 GB RAM |
| SQL-heavy production workload | 8+ vCPU / 32+ GB RAM |
| ERP, reporting, or multi-user business workload | Size after reviewing database size, users, reports, and backup window |
Do not size SQL Server only by vCPU count. RAM, NVMe storage, database behavior, backup windows, and application concurrency matter just as much.
Quick context: what changed in SQL Server 2025
Before you install, know the practical SQL Server 2025 changes that affect a Windows VPS deployment:
- SQL Server 2025 is version 17.x.
- SQL Server 2025 reached general availability as build 17.0.1000.7 on November 18, 2025.
- Standard edition now supports up to 32 cores and 256 GB buffer pool memory.
- Express edition now supports up to 50 GB per relational database.
- Web edition is discontinued.
- Express with Advanced Services is discontinued because base Express now includes those features.
- Standard Developer and Enterprise Developer are separate free developer editions.
- Resource Governor is available in Standard and Standard Developer.
- SQL Server 2025 adds AI-related features such as vector data type, vector functions, external AI model objects, and vector search.
- Some SQL Server 2025 features remain preview-only and should not be treated as production-ready until Microsoft marks them generally available.
The big takeaway:
SQL Server 2025 is a strong new baseline for new deployments, but production installs should still use only the features the workload actually needs.
If you are bringing forward a SQL Server 2019 or 2022 workload that depends on removed or changed features, validate the workload before upgrading.
Step 1 — Prepare the Windows Server VPS
Connect to the Windows Server VPS over RDP as Administrator.
Before running setup:
- Install pending Windows updates.
- Reboot the server.
- Confirm you can reconnect over RDP.
- Confirm the system drive has enough free space.
- Create a clean SQL folder structure.
Run PowerShell as Administrator:
New-Item -ItemType Directory -Path "C:\SQL\Data" -Force New-Item -ItemType Directory -Path "C:\SQL\Logs" -Force New-Item -ItemType Directory -Path "C:\SQL\Backups" -Force New-Item -ItemType Directory -Path "C:\SQL\TempDB" -Force
This keeps user databases, transaction logs, backups, and TempDB easier to manage than leaving everything under C:\Program Files\Microsoft SQL Server\.
If you later use separate disks or volumes, keep the same idea with dedicated paths such as D:\SQL\Data, L:\SQL\Logs, and T:\SQL\TempDB.
Step 2 — Get SQL Server 2025 media onto the server
You have three practical options.
Option 1 — Use winget to get the installer media
winget is built into Windows Server 2025 and can locate SQL Server packages.
# See available SQL Server packages winget search --id "Microsoft.SQLServer" # Install SQL Server 2025 Developer media winget install --id Microsoft.SQLServer.2025.Developer
Important: if winget launches a one-click Basic installation, do not use that as the final production-style install. Basic setup can skip important choices such as TempDB, data paths, authentication, SQL Server Agent startup, and feature selection.
For this guide, use the full Custom setup wizard from the extracted media.
If the media is extracted to C:\SQL2025\StdDev_ENU\, launch:
Start-Process -FilePath "C:\SQL2025\StdDev_ENU\setup.exe" -Verb RunAs
Option 2 — Download media from Microsoft
Download SQL Server 2025 from Microsoft’s SQL Server download page and choose Download Media.
Use Download Media instead of Basic install so you can run the full setup wizard and control:
- edition;
- feature selection;
- authentication;
- service startup;
- data directories;
- TempDB;
- MaxDOP;
- memory;
- firewall planning.
Option 3 — Use Evaluation Center
Use Evaluation Edition when you need to test Enterprise features for a limited time.
This is useful for:
- Enterprise feature testing;
- upgrade validation;
- proof-of-concept work;
- temporary HA/DR lab work.
Do not treat Evaluation Edition as a permanent production install.
Do not run SQL Server setup from an ISO mounted through your local RDP client drive. Put the media on the Windows Server VPS itself or on a real network share reachable by the server.
Step 3 — Run the install wizard
From PowerShell on the Windows Server VPS, launch setup as Administrator:
Start-Process -FilePath "C:\SQL2025\StdDev_ENU\setup.exe" -Verb RunAs

The SQL Server Installation Center opens.
Click:
Installation → New SQL Server standalone installation or add features to an existing installation
SQL Server Setup then walks through the installation screens. Most are straightforward. The sections below cover the decisions that matter on a Windows VPS.
Edition

For this guide, select:
Specify a free edition → Standard Developer
For production, choose:
Enter the product key → Paid Standard or Enterprise key
For a temporary Enterprise evaluation, choose Evaluation.
Click Next.
License terms, setup rules, Microsoft Update, and product updates
Accept the license terms.
If Microsoft Update is offered, enable it so Windows can check for Microsoft product updates.
If the setup rule check reports a pending restart, cancel setup, reboot the server, reconnect, and run setup again.
Do not ignore pending restart warnings. SQL Server setup is sensitive to restarts pending from Windows Update, uninstallers, drivers, and previous software installs.
Install Rules — the Windows Firewall warning is expected

A Windows Firewall warning is normal.
Do not disable Windows Firewall.
Continue the install and configure firewall rules intentionally after setup.
Correct model:
Install SQL Server. Decide who needs remote access. Open only the required port. Restrict by source IP or private network.
Azure Extension for SQL Server — skip unless you need Azure Arc

SQL Server setup may offer Azure Extension or Azure Arc registration.
For a self-managed Windows VPS, leave this unchecked unless you specifically need:
- Azure Arc management;
- pay-as-you-go SQL billing through Azure;
- Microsoft Entra integration through Arc;
- Azure-connected SQL management features;
- Azure-managed backup or compliance tooling.
Most standalone Raff Windows VPS SQL Server installs do not need Azure Arc during initial setup.
You can register later if a real requirement appears.
Feature Selection — install only what you need

For most Windows VPS deployments, start with a small feature set.
Recommended baseline:
- Database Engine Services — required for SQL Server databases;
- SQL Server Replication — useful if the workload may need replication later;
- Full-Text and Semantic Extractions for Search — useful for many line-of-business applications.
Leave optional features unchecked unless you know you need them:
- AI Services and Language Extensions;
- PolyBase Query Service for External Data;
- Analysis Services;
- Integration Services;
- Scale Out Worker.
A smaller install is easier to secure, patch, monitor, and troubleshoot.
Add optional components later only when the requirement becomes real.
Instance Configuration — use the default instance

Select:
Default instance: MSSQLSERVER
A default instance is easier for applications and administrators because connections can use:
server-name-or-ip
Use a named instance only when:
- multiple SQL Server instances run on one VM;
- you need side-by-side SQL versions;
- a vendor app requires a specific instance name;
- your architecture intentionally separates tenants or apps by instance.
For a clean single-purpose VPS, the default instance is usually better.
Server Configuration — change SQL Server Agent and enable instant file initialization

Make two changes:
- Set SQL Server Agent startup type to Automatic.
- Tick Grant Perform Volume Maintenance Tasks privilege to SQL Server Database Engine Service.
SQL Server Agent should be automatic if you will use scheduled jobs, maintenance plans, alerts, database backups, or recurring tasks.
The Perform Volume Maintenance Tasks privilege enables instant file initialization for data files. This can make data file creation and growth much faster.
Leave service accounts at the defaults unless your environment requires domain service accounts.
Leave SQL Server Browser disabled for a default instance.
On the Collation tab, keep the default unless your app vendor requires a specific collation. Changing collation later can be painful.
Database Engine Configuration — authentication

For a standalone, non-domain-joined Windows VPS, Mixed Mode is often the practical choice.
Mixed Mode = SQL Server authentication + Windows authentication
Mixed Mode is common when:
- the server is not joined to Active Directory;
- applications need SQL logins;
- connection strings use SQL username and password;
- users or apps connect from outside a Windows domain.
If you use Mixed Mode:
- set a long, strong
sapassword; - store it in a password manager immediately;
- click Add Current User so the current Windows Administrator becomes a SQL Server admin;
- create dedicated app logins later;
- do not use
saas the normal application login.
For domain-joined environments, Windows Authentication may be enough.
Data Directories tab

Use the folder structure created earlier.
| Field | Change to |
|---|---|
| User database directory | C:\SQL\Data |
| User database log directory | C:\SQL\Logs |
| Backup directory | C:\SQL\Backups |
Leave system database paths at the default unless you have a specific design reason to move them.
On a single-volume VPS, this structure does not create separate physical storage. The benefit is operational clarity: data files, log files, and backups are no longer mixed into the SQL Server program directory.
TempDB tab — the most important performance screen

TempDB matters for sorts, temp tables, version store activity, reports, and many application workloads.
A practical starting point:
| VM size | TempDB data files | Initial size per file | Growth |
|---|---|---|---|
| 2 vCPU / 4 GB RAM | 2 | 256 MB | 64 MB |
| 4 vCPU / 8 GB RAM | 4 | 512 MB | 64 MB |
| 8 vCPU / 16 GB RAM | 8 | 1024 MB | 128 MB |
| 16 vCPU / 32 GB RAM | 8 | 2048 MB | 256 MB |
Use this rule for most small and mid-sized VPS installs:
TempDB data files = number of vCPUs, capped at 8.
Keep all TempDB data files equal size and use fixed MB growth instead of percentage growth.
Recommended path:
C:\SQL\TempDB
Do not leave TempDB ignored. Poor TempDB defaults can become painful when multiple users, reports, temp tables, or scheduled jobs run at the same time.
MaxDOP tab — use the installer recommendation as the starting point

The SQL Server setup wizard usually proposes a good starting MaxDOP based on logical CPU count.
Practical starting values:
| vCPU | MaxDOP starting point |
|---|---|
| 2 | 2 |
| 4 | 4 |
| 8 | 8 |
| 16+ | 8 |
Avoid setting MaxDOP to 0 on small VMs unless you have tested the workload.
A MaxDOP of 0 allows a query to use all available schedulers, which can hurt concurrency on smaller VPS plans.
Memory and FILESTREAM tabs
Leave the Memory tab at setup defaults for now.
After installation, set max server memory with T-SQL so you can choose a value based on the VM size and what else runs on the server.
Leave FILESTREAM disabled unless your application specifically requires FILESTREAM.
Ready to Install

Before clicking Install, review:
- edition;
- selected features;
- default instance;
- SQL Server Agent startup type;
- data directory;
- log directory;
- backup directory;
- TempDB file count;
- TempDB file size;
- TempDB growth;
- MaxDOP;
- SQL admins;
- authentication mode.
SQL Setup also writes a configuration file. Save the path if you want to reproduce the same installation later.
Do not publish the configuration file publicly if it contains sensitive paths, usernames, or product-key-related information.
Click Install.
Expect setup to take 15–30 minutes depending on VM size and selected features.
Complete
<!-- IMAGE: raff_mssql2025_complete_success_2026_04.png -->When setup finishes, every selected feature should show Succeeded.
If a feature fails:
- Open the setup log folder shown on the Complete screen.
- Review the summary log.
- Fix the root cause.
- Reboot if required.
- Re-run setup only after the failure is understood.
Do not ignore partial installation failures.
Step 4 — Cap SQL Server memory
SQL Server will try to use available memory aggressively. That is normal, but a Windows Server VPS also needs RAM for:
- Windows Server;
- RDP sessions;
- antivirus or EDR;
- backup software;
- monitoring agents;
- application services;
- file cache;
- SSMS if installed locally.
Set max server memory after installation.
Example for an 8 GB RAM VPS:
EXEC sys.sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sys.sp_configure 'max server memory (MB)', 6144; RECONFIGURE; EXEC sys.sp_configure 'max server memory (MB)';
Example starting points:
| VPS RAM | Suggested SQL max server memory |
|---|---|
| 4 GB | 2048–2560 MB |
| 8 GB | 5120–6144 MB |
| 16 GB | 12288–13312 MB |
| 32 GB | 24576–28672 MB |
| 64 GB | 53248–57344 MB |
These are starting points.
Tune based on actual workload, monitoring, and what else runs on the server.
Do not leave max server memory at the effective unlimited default on production-style installs.
