其他HD上的SQL Server 2008 TempDB

时间:2011-05-07 02:20:29

标签: sql-server sql-server-2008 tempdb

我想将与TempDB相关的所有内容存储在单独的HD上。

我有一个500 Gb大小的新HD作为我的E:\驱动器。

如何在一个驱动器中使用或移动TempDB到另一个驱动器?

------------------------------ EDIT ------------- --------------
按照本教程,重新启动服务器后,我收到消息:

  

请求失败或服务失败   没有及时回应。   查阅事件日志或其他   应用程序错误日志以获取详细信息。

  • 我不能再开始了,有什么建议吗? 它是否与数据库路径有关。 (数据库的位置,例如tempdb.mdf,不同于文件夹'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA’

1 个答案:

答案 0 :(得分:8)

这可以在服务器属性中完成。

enter image description here

  1. 右键单击您的服务器实例
  2. 点击“属性”
  3. 点击“数据库设置”
  4. 将“Log”更改为您想要的任何路径(包括备用硬盘)
  5. 修改

    我误解了上述问题......我想我应该学会阅读。以上说明显示了如何将LOG DB移动到其他硬盘驱动器。

    找到的说明HERE将向您展示如何移动TempDB

    打开查询分析器并连接到您的服务器。运行此脚本以获取用于TempDB的文件的名称。

    USE TempDB
    GO
    EXEC sp_helpfile
    GO
    

    结果将类似于:

    | name     | fileid  | filename                                                | filegroup  | size     |
    |----------|---------|---------------------------------------------------------|------------|----------|
    | tempdev  | 1       | C:Program FilesMicrosoft SQLServerMSSQLdatatempdb.mdf   | PRIMARY    | 16000 KB |
    | templog  | 2       | C:Program FilesMicrosoft SQL ServerMSSQLdatatemplog.ldf | NULL       | 1024 KB  |
    

    以及与数据库相关的其他信息。默认情况下,文件的名称通常是tempdev和demplog。这些名称将在下一个声明中使用。运行以下代码,移动mdf和ldf文件。

    USE master
    GO
    ALTER DATABASE TempDB MODIFY FILE
    (NAME = tempdev, FILENAME = 'd:datatempdb.mdf')
    GO
    ALTER DATABASE TempDB MODIFY FILE
    (NAME = templog, FILENAME = 'e:datatemplog.ldf')
    GO
    

    TempDB的定义已更改。但是,在SQL Server重新启动之前,不会对TempDB进行任何更改。请停止并重新启动SQL Server,它将在新位置创建TempDB文件。