Memory Used by SQL Server Objects Specifications

The following table lists the approximate amount of memory used by different objects in Microsoft 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 relational 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.