日期:2014-05-19  浏览次数:20529 次

如何只备份数据库中的部分表?
一个20G的数据库,里面大部分都是每天生成的当日的信息,只有六个表有历史记录,需要对这六个表进行定期备份,其它都不需要,应该如何做?

------解决方案--------------------
分成两个库,当前库和历史库,备份历史库


------解决方案--------------------
上面是最佳方法,否则只能倒出或者使用bcp备份

bcp备份及其恢复操作度比较麻烦
倒出倒入也是

------解决方案--------------------
新建一个文件组 ,把这六个表放到新的文件组中,备份文件组
------解决方案--------------------
在数据库备份的选项中日志文件和文件与文件组备份都是不能选择的,
只能选择完全备份与差异备份。为什么?
--数据库的属性中---选项----故障还原---选择完全模式

1.数据库名称--属性--文件组(新建文件组a1)--确定
2.数据库名称--属性--,新建数据文件(文件组选择a1)--确定
3.表--设计表--属性--选择(表文件组a1)
表文件组是指选择要在其中存储选定表数据的文件组名。
文本文件组选择要在其中存储选定表的文本和图像的文件组名,可以放置任意 text、image 和 ntext 列。

如何将现有的表置于不同的文件组上(企业管理器)
在其它文件组上放置现有的表

展开服务器组,然后展开服务器。
展开 "数据库 "文件夹,展开该表所属的数据库,然后单击 "表 "文件夹。
在详细信息窗格中右击表,然后单击 "设计表 "命令。
右击任意列,然后单击 "属性 "命令。
在 "表 "选项卡的 "表文件组 "列表中,选择要在其中放置表的文件组。
在 "文本文件组 "列表中,选择要放置任意 text、image 和 ntext 列的文件组。(可选)

还原数据库时 出现错误提示:
数据库 'XXXXX ' 的日志尾部尚未备份。请备份该日志,然后重新运行 RESTORE 语句 并在该语中指定 FILE 子句。
--备份日志后在还原 。

还原后显示 “数据库正在装载”
--新建同名数据,覆盖.


------解决方案--------------------
差异备份也不能解决单独备份表问题,MSSQLSERVER单独备份表的话,只能使用BCP方式

ORACLE倒是支持表备份呵呵