Traditional SQL Server deployments require significant administrative overhead: Windows services, domain accounts, firewall rules, and instance configuration. For local development, unit testing, and lightweight desktop applications, this overhead is often unnecessary. Microsoft introduced LocalDB as a solution to this problem—first in SQL Server 2012 Express, with continued improvements through SQL Server 2019.
| Feature | Description | |---------|-------------| | | User-mode process, not a Windows service | | Startup | On-demand when first connection is made | | Shutdown | Automatic after idle timeout (configurable) | | Per-User Isolation | Each Windows user has separate instance(s) | | Compatibility Level | Full SQL Server 2019 engine (up to 150) | | Supported APIs | SQL Server Native Client, ODBC, OLE DB, .NET SqlClient | | Attach Limit | Up to 8 physical CPU cores | | Memory Limit | Dynamic, but limited to ~1GB in practice (Express engine) | | Database Size | 10GB maximum per database (Express limit) | sql server 2019 localdb
Developers often compare LocalDB to SQLite. The critical distinction: | Feature | Description | |---------|-------------| | |