I'm working on a project that uses a SQL Server Express database that is decently large already and I know indexing specific columns / tables can take up quite a bit of space.
What I don't know is whether the space used by the index counts against the total size limit of the database. If anyone has any insight let me know.
If you think your deployment cannot operate within these limitations, use another supported database instead. If you exceed the limits, you will experience a service outage and you will need to upgrade to a paid version of Microsoft SQL Server.
In short, yes. Rebuilding indexes increases database file size. There are some nuances, but in general terms it is true. Both ONLINE or OFFLINE rebuild/reindexing operations increase file size.
Limitations of SQL Server Express:1GB maximum memory used by the database engine. 10GB maximum database size. 1MB maximum buffer cache. CPU the lesser of one (1) socket or four (4) cores (number of SQL user connections NOT limited)
Expand Databases, right-click the database to increase, and then click Properties. In Database Properties, select the Files page. To increase the size of an existing file, increase the value in the Initial Size (MB) column for the file. You must increase the size of the database by at least 1 megabyte.
relational data
counts towards the limit. This actually includes indexes, but not FILESTREAM data.
The full list of limitations can be found on MSDN. This includes the note on relational data.
The limit is really for the size of the database's MDF file, so yes it will include your indexes, as well as other database objects, like SQLCLR code, etc. Starting with SQL Server 2008 the full text indexes are also part of the database, so they will count towards the limit.
What is excluded is the data stored in FILESTREAM data type, mentioned by Steve, since FILESTREAM data is stored in separate files, and not in MDF file.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With