SQL Server完全备份

时间:2014-12-02 12:34:49

标签: sql-server database-backups

当我提出这个问题时,请不要生气!

互联网上有很多不完整的答案确实很烦人,所以如果一个人寻找信息,他必须搜索一整天才能找到正确的答案!

简单问题:

SQL Server的完整备份备份是什么?

发现答案:

  • FULL被解释为与SIMPLE和DIFFERENTIAL不同,
  • FULL被解释为仅包括必要的交易日志。

依旧......

但是NOBODY正在解释

  • FULL是否包含架构
  • FULL是否包含所有索引
  • FULL是否包含所有存储过程
  • FULL是否包含所有观点

换句话说:

如果SQL Server计算机完全崩溃,那么我是否可以从FULL备份中重建所有数据库?

当然,DB Admins很容易找到这些信息,因为他们知道在哪里查找 - 或者他们不需要这些信息,因为他们已经知道了。

但对于没有管理员知识的开发人员很难找到最简单的东西!

提前多多感谢。

Gerald Trost

3 个答案:

答案 0 :(得分:4)

但是NOBODY正在解释

FULL是否包含架构 -

FULL是否包含所有索引 -

FULL是否包含所有存储过程 -

FULL是否包含所有视图 -

换句话说:

如果SQLServer机器完全崩溃,我是否能够从FULL备份中重建所有数据库? - (只要它们远程存储在服务器上)

答案 1 :(得分:1)

是的,您可以执行完全备份中提到的所有操作。

答案 2 :(得分:1)

为了提供比我评论中更多的信息,我的想法是:

FULL BACKUP将备份属于数据库的所有内容,基本上这意味着对象资源管理器中数据库下的任何内容,包括所有模式,索引,过程,视图,函数以及备份完成之前的所有已提交事务(甚至未修正的那些将在恢复后回滚的等等。

但是,数据库通常不仅仅是它所包含内容的总和:

它的对象可以引用链接服务器,同一实例上的其他数据库,HD上的内容,Web服务等等。它可以依赖SQL代理作业来执行维护任务和定期数据修复和处理,登录等。这些存储在SQL Server实例级别上。因此,您不能只是抓住数据库,移动数据库并将其恢复到完全不同的实例,然后期望它能够即时运行。那些引用的对象,作业等也需要存在,包括它们的权限,Web服务的潜在防火墙设置等。

这可能是显而易见的,但我认为同样指出它并不会有什么坏处。在从其他环境设置恢复完整数据库时,确实无需确定所需的一个列表,因为它取决于具体情况。负责此类恢复程序的人员应该知道那里有什么以及需要考虑什么。