Memory Used by SQL Server Objects Specifications
The following table lists the approximate amount of memory used by different objects in SQL Server. The amounts listed are estimates and can vary depending on the environment and how objects are created. SQL Server 2005 manages some items in a way significantly different from earlier versions.
SQL Server 2000 |
SQL Server 2005 |
SQL Server 2008 |
|
---|---|---|---|
Lock |
64 bytes + 32 bytes per owner |
64 bytes + 32 bytes per owner |
64 bytes + 32 bytes per owner |
Open database |
3924 bytes + 1640 bytes per file and 336 bytes per filegroup |
Not applicable to SQL Server 2005 |
Not applicable to SQL Server 2008 |
Open object |
256 bytes + 1724 bytes per index opened on the object |
Not applicable to SQL Server 2005 |
Not applicable to SQL Server 2008 |
User connection |
12 KB + (3 * network_packet_size) |
Approximately (3 * network_packet_size + 94 KB) |
Approximately (3 * network_packet_size + 94 KB) |
The network packet size is the size of the tabular data scheme (TDS) packets that are used to communicate between applications and the SQL Server Database Engine. The default packet size is 4 KB, and is controlled by the network packet size configuration option.
When using multiple active result sets is enabled, the user connection is approximately (3 + 3 * num_logical_connections) * network_packet_size + 94 KB.