解决方案 »

  1.   

    补充:
    事先对表进行了表分区,文件组FG2014D,及文件FG2014D_F正好是表分区文件中第4个分区文件。
    我想试下对表分区文件进行备份还原的情况,为做数据归档作准备。
      

  2.   

    文件组还原时,需加尾部日志的备份还原..-- 文件组备份
    BACKUP DATABASE [JMC] FILEGROUP = N'FG2014D' 
     TO DISK = N'E:\FG2014D_F.bak' 
     WITH NOFORMAT, INIT,  NAME = N'JMC-完整FG2014D_F 文件组 备份', 
     SKIP, NOREWIND, NOUNLOAD, STATS = 10
    -- 文件组还原
    backup log [JMC] to disk='E:\JMClog.trn' with norecoveryRESTORE DATABASE [JMC] FILE = N'FG2014D_F' 
     FROM  DISK = N'E:\FG2014D_F.bak' 
     WITH  FILE = 1,  NOUNLOAD,  STATS = 10, norecoveryrestore log [JMC] from disk='E:\JMClog.trn' with recovery
      

  3.   

    我遇到别一个问题,看到你是版主,想请教下,跟这个问题是同一个问题。搞了两天都没搞定啊,就做一个数据归档的功能。急死了。
    备份好分区文件后,需要把相关分区文件的数据内容清空以释放空间,我搜索了网上很多资料都说建立一个同样结构的临时表,然后把分区表switch到临时表,再把临时表drop即可。我的代码如下: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 查看元数据是否已损坏。可是我执行了DBCC CHECKDB语句发现没有错误啊。
    死在这了,整个归档功能就差这块了啊,求救
      

  4.   

    从LZ代码看, switch partition到临时表#TempExpData后就直接drop table #TempExpData?
    请问这样的"归档"逻辑是否正确?
      

  5.   

    关于归档功能我之前有一个帖子还没有结,里面有详细的说明,并且已经有人回过贴了,麻烦您帮看看
    http://bbs.csdn.net/topics/390839678?page=1#post-397828515