数据库文件分配的问题?如果有两块硬盘都是40G,加起来就是80G
一个硬盘可以分配多个磁盘现在的状况是D,E,F,G盘都有相关的数据库文件
而我想把数据库文件合在一起,放在一个磁盘里,在不影响当前数据库执行的情况下怎么做?

解决方案 »

  1.   

    用户数据库正常状态下移动数据库文件:
    设置用户数据库离线(ALTER DATABASE dbname SET OFFLINE);
    将数据库文件移动到新的位置;
    在 MASTER 数据库下修改文件的位置(ALTER DATABASE dbname MODIFY FILE (NAME=logical_name, FILENAME=new_os_filename));
    让用户数据库重新上线(ALTER dbname DATABASE SET ONLINE);
    检查文件状态(SELECT name, physical_name, state_desc FROM SYS.MASTER_FILES WHERE database_id=DB_ID())。
      

  2.   

    DBCC SHRINKFILE(filename,EMPTYFILE) 将某一数据文件的内容移到同一文件组中的其他数据文件中;
    再使用 ALTER DATABASE REMOVE FILE 删除该文件。
      

  3.   

    RESTORE DATABASE dbname FROM backupdevice
     MOVE logical_filename TO os_filename