TempDB используется для временной работы в SQL Server. Каждый раз, когда вы создаете временную таблицу, хранение осуществляется внутри TempDB. Вот очень хорошая статья из MSDN
Вот некоторые пункты, на которые ссылается MSDN:
Системная база данных tempdb - это глобальный ресурс, который доступен всем пользователям, подключенным к экземпляру SQL Server, и используется для хранения следующего:
• Временные пользовательские объекты, которые явно созданы, такие как: глобальные или локальные временные таблицы, временные хранимые процедуры, переменные таблиц или курсоры.
• Внутренние объекты, созданные ядром базы данных SQL Server, например, рабочие таблицы для хранения промежуточных результатов для катушек или сортировки.
• Версии строк, которые генерируются транзакциями изменения данных в базе данных, в которой используется фиксация чтения с использованием транзакций изоляции версий строк или транзакций изоляции моментальных снимков.
• Версии строк, которые создаются транзакциями изменения данных для таких функций, как: операции с индексами в сети, множественные активные наборы результатов (MARS) и триггеры AFTER.
Операции в базе данных tempdb минимально регистрируются. Это позволяет откатывать транзакции. База данных tempdb создается заново при каждом запуске SQL Server, поэтому система всегда запускается с чистой копией базы данных. Временные таблицы и хранимые процедуры автоматически удаляются при отключении, и никакие подключения не активны, когда система выключается. Следовательно, в базе данных tempdb никогда не сохраняется ничего из одного сеанса SQL Server в другой. Операции резервного копирования и восстановления не разрешены для базы данных tempdb.
Существует также главная база данных (содержит информацию обо всех базах данных), Модель база данных, MSDB (хранит информацию об агенте sql, dts, jobs и т. д.).
Более подробная информация здесь