Инструкция по переносу TempDB в MS SQL Server на другой дискВажно: База данных
tempdb создается заново при каждом запуске службы SQL Server. Копировать старые файлы вручную перед переносом
не нужно.
Шаг 1. Создание каталогаВ проводнике Windows создайте новую папку, куда будут перенесены файлы. В нашем примере это путь:
E:\TempDBУбедитесь, что у учетной записи, от имени которой запущена служба SQL Server (например, NT Service\MSSQLSERVER), есть полные права доступа к этой папке.Шаг 2. Выполнение T-SQL скриптаОткройте
SQL Server Management Studio (SSMS), создайте новый запрос (
New Query) к базе
master и выполните следующий скрипт:
USE master;
GO
-- 1. Основной файл данных
ALTER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'E:\TempDB\tempdb.mdf');
GO
-- 2. Файл лога транзакций
ALTER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'E:\TempDB\templog.ldf');
GO
-- 3. Дополнительные файлы данных (оптимизация под многопоточность)
ALTER DATABASE tempdb MODIFY FILE (NAME = temp2, FILENAME = 'E:\TempDB\tempdb_mssql_2.ndf');
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = temp3, FILENAME = 'E:\TempDB\tempdb_mssql_3.ndf');
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = temp4, FILENAME = 'E:\TempDB\tempdb_mssql_4.ndf');
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = temp5, FILENAME = 'E:\TempDB\tempdb_mssql_5.ndf');
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = temp6, FILENAME = 'E:\TempDB\tempdb_mssql_6.ndf');
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = temp7, FILENAME = 'E:\TempDB\tempdb_mssql_7.ndf');
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = temp8, FILENAME = 'E:\TempDB\tempdb_mssql_8.ndf');
GOШаг 3. Перезапуск службы- Откройте оснастку Службы (services.msc) или SQL Server Configuration Manager.
- Найдите службу SQL Server (MSSQLSERVER).
- Нажмите правой кнопкой мыши и выберите Перезапустить (Restart).
Шаг 4. Проверка и очистка[list=1]
- Убедитесь, что в папке E:\TempDB появились новые файлы.
- Старые файлы в каталоге C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA\ теперь можно удалить вручную, чтобы освободить место на системном диске.