Как переместить базу данных tempdb в MS-SQL   

Иногда случается, что необходимо перенести служебную базы данных tempdb в другой каталог или на другой диск, например, в случае, когда при установке эта база была установлена на медленный диск, например, на системный, как это часто случается в случае типовой установки MS-SQL сервера. Обычными графическими средствами MS-SQL Enterprise Manager (EM) перенос сделать нельзя, в отличие от обычной пользовательской базы, которой можно сделать «detach/attach».

Но то, чего нельзя сделать графическими средствами, можно сделать средствами T-SQL. Для этого нужно выполнить в Query Analyzer совсем небольшой скрипт.

Use master
go
ALTER DATABASE TEMPDB
MODIFY FILE (NAME='tempdev', FILENAME='E:worksqltempdb.mdf')
go
ALTER DATABASE TEMPDB
MODIFY FILE (NAME='templog', FILENAME='E:worksqltemplog.ldf')
go

В приведенном примере база данных tempdb переносится в каталог «E:worksql», на диске «E:». Но этим действия не заканчиваются. Данный скрипт только вносит изменения в служебные данные сервера. Чтобы данная операция была выполнена до конца, необходимо перезапустить MS-SQL сервер. В момент запуска база данных tempdb создастся уже в новом каталоге. После того, как сервер запустился, файлы базы tempdb по старому ее адресу можно спокойно удалить, так как сами они не удаляются.

 


 

Перепечатка, воспроизведение в любой форме, распространение, в том числе в переводе, любых материалов с сайта www.softpoint.ru возможны только с письменного разрешения компании "СофтПоинт". Это правило действует для всех без исключения случаев, кроме тех, когда в материале прямо указано разрешение на копирование (основание: Закон Российской Федерации "Об авторском праве и смежных правах").