解决方案 »

  1.   

    http://www.cnblogs.com/lyhabc/p/3504380.html
      

  2.   

    其实还有一种方法你可以SET FILEOFFLINE然后移动alter database PartitionTest1 modify file (name = 'Month01', offline)
    但是不建议这样做,如果试图访问这个区间的数据会有问题。
      

  3.   

    我其实特别想这样做的了,我试过确实可以先把数据文件offline,这时也可以删除ndf文件,并且也找到了还原单个文件组的办法,但是问题是,删除ndf文件后,在还原之前,这个ndf文件就一直处理离线状态,关键就在于,这个文件离线后会让整个数据库出问题(分离整个数据库后,无法再附加回去,会报错),而且也正如你说的,查询数据时也会报错
      

  4.   

    我其实特别想这样做的了,我试过确实可以先把数据文件offline,这时也可以删除ndf文件,并且也找到了还原单个文件组的办法,但是问题是,删除ndf文件后,在还原之前,这个ndf文件就一直处理离线状态,关键就在于,这个文件离线后会让整个数据库出问题(分离整个数据库后,无法再附加回去,会报错),而且也正如你说的,查询数据时也会报错三楼链接中的方法只不过是拐了个弯而已,个人觉得更规范一些,你这样无非就是想办法直接干掉相关的ndf数据文件,感觉有点暴力了另外一点,假如你要对历史文件查询,怎么办?单单这些个ndf文件也不好使吧,不还是需要利用生产库的备份做还原,
      

  5.   

    我其实特别想这样做的了,我试过确实可以先把数据文件offline,这时也可以删除ndf文件,并且也找到了还原单个文件组的办法,但是问题是,删除ndf文件后,在还原之前,这个ndf文件就一直处理离线状态,关键就在于,这个文件离线后会让整个数据库出问题(分离整个数据库后,无法再附加回去,会报错),而且也正如你说的,查询数据时也会报错三楼链接中的方法只不过是拐了个弯而已,个人觉得更规范一些,你这样无非就是想办法直接干掉相关的ndf数据文件,感觉有点暴力了另外一点,假如你要对历史文件查询,怎么办?单单这些个ndf文件也不好使吧,不还是需要利用生产库的备份做还原,
    使某个ndf文件offline(这个ndf文件是一个大表中的分区表文件)的方式,我试过了,你说的还原问题我解决了,是可以还原的,不过确实是需要先备份的,也只能通过备份还原。我仔细看过您给的三楼的链接内容,不知道是不是我没有看懂,我觉得还是没有解决我要解决的问题啊。
    因为把test_01的数据转移到test_o2后,然后清空test_01确实可以把test_01删除了,但是test_02还是不可以移动到其他电脑上啊,也不可以删除test_02文件。
      

  6.   

    我想要解决的问题是如何归档ndf文件的内容,使归档后ndf文件可以随意删除或移动到其他电脑上。但要求可以还原(移动到其他电脑上而不是删除的话)。
      

  7.   

    如果我没有理解错的话,三楼给的链接内容只是把ndf文件内容转到其他ndf文件了,但这个文件还是在生产电脑中,而不可以把它删除或者转移到其他电脑(copy后再删除ndf文件),没有实现减少生产电脑空间的问题。
      

  8.   


    非常感谢,我怎么没想到,我试下去,可以的话,直接给你分,tks
      

  9.   


    非常感谢,我怎么没想到,我试下去,可以的话,直接给你分,tks分不分的不算啥,我也是看着问题,回忆当时看到过这么一篇文章,
    博客园的桦仔是个高手,专职的DBA,建议多翻翻他的博客,里面有很多数据库管理相关的
      

  10.   

    在选择分区文件进行备份还原时遇到问题,无法继续,为了给各位加点小分,我已单独开了个帖子,希望各位不吝赐教!
    http://bbs.csdn.net/topics/390841193?page=1#post-397824627
      

  11.   


    非常感谢,我怎么没想到,我试下去,可以的话,直接给你分,tks分不分的不算啥,我也是看着问题,回忆当时看到过这么一篇文章,
    博客园的桦仔是个高手,专职的DBA,建议多翻翻他的博客,里面有很多数据库管理相关的
    遇到问题啊,为什么 我无法把文件中的数据清空呢,网上搜索了很多资料,说是建立一个结构一样的表就可以删除成功的啊。
    我的语句如下:CREATE TABLE #TempExpData(
    [UnitId] [int] NOT NULL,
    [ExpDataName] [nvarchar](100) COLLATE Chinese_PRC_CI_AS NULL,
    [ExpDataDes] [nvarchar](500) COLLATE Chinese_PRC_CI_AS NULL,
    [CTime] [datetime] NOT NULL CONSTRAINT [DF_ExpData_CTime]  DEFAULT (getdate()),
    [ReceiveTime] [datetime] NOT NULL CONSTRAINT [DF_ExpData_ReceiveTime]  DEFAULT (getdate()),
    [RawData] [nvarchar](1000) COLLATE Chinese_PRC_CI_AS NULL
    ) ON [PRIMARY]
    create clustered index IX_ExpData_2
    on #TempExpData(ReceiveTime ASC, UnitId ASC)ALTER TABLE ExpData SWITCH PARTITION 3 TO #TempExpDatadrop table #TempExpData
    可是会报错:消息 608,级别 16,状态 1,第 17 行
    在数据库 5 中找不到分区 ID 为 72057594105495552 的目录条目。元数据不一致。请运行 DBCC CHECKDB 查看元数据是否已损坏。