物理备份和逻辑备份有什么区别?

RV1*_*186 5 backup replication database-backups

我正在读关于备份的内容.我明白了什么是物理备份.但是我无法理解什么是逻辑备份?它是如何工作的?

工作的图形表示将有所帮助.

提前致谢

Vik*_*ant 10

逻辑与物理(基本差异):
逻辑备份使用SQL语句.使用exp工具导出是合乎逻辑的.
物理备份是在数据库启动并运行时(HOT BACKUP)或数据库关闭时复制数据文件(COLD BACKUP)

换一种说法,

  • 物理备份是为了备份属于数据库的所有物理文件而复制的(如数据文件,控制文件,日志文件,可执行文件等).
  • 逻辑备份中,您不会获取任何物理内容的副本,您只需将数据从数据文件中提取到转储文件中.(例如:使用导出)

阅读本文

物理备份

操作系统将数据库文件保存到磁带或其他介质上.这对于在需要时将系统重新安装到较早的点是有用的.

逻辑备份

在逻辑备份技术中,IMPORT/EXPORT实用程序用于创建数据库的备份.逻辑备份备份数据库的内容.可以使用逻辑备份将数据库还原到上次备份.但是,与物理支持不同,它不应该用于创建操作系统备份副本,因为使用此方法进行恢复可以纠正损坏的数据文件.因此,在这些情况下,应首选物理备份.

更多类型... 在物理备份下的冷和热备份,也在那里解释.


逻辑与物理数据库备份:

一旦您决定了正常运行时间要求,就需要决定从数据库中备份哪种数据.

  1. 物理文件(如文本文件)作为单个文档存储在硬盘驱动器上.虽然数据库由许多复杂元素组成,但这些元素通常会聚合到服务器硬盘上的简单文件中.这些文件可以像系统上的任何其他文件一样轻松备份.
  2. 逻辑数据元素(如表,记录及其关联的元数据)存储在许多不同的位置.表和其他逻辑数据库元素的备份通常需要专门用于特定数据库平台的工具.虽然这些类型的备份更复杂,但它们提供了更精细的恢复功能.在进行涉及复杂事务和相互依赖关系的表的时间点恢复时尤其如此.

逻辑数据库备份对于特定组件的粒度恢复至关重要.物理备份对于完整的灾难恢复方案非常有用.逻辑和物理数据库备份之间的选择应作为恢复点目标的一部分.(的RPO)


Ste*_*anB 0

根据我的理解,逻辑备份只是从数据库中导出一个或多个表。如果它包含数据库的所有表,则可以使用它来恢复进行逻辑备份时数据库的状态。人们还可以使用它将表导入到不同的数据库中。例如,带有 CREATE TABLE 和 INSERT 语句的脚本将是逻辑备份的可能文件格式(如 MySQL 使用的 - Oracle 有自己的导出文件文件格式)。

物理备份是内部数据库文件的副本。只有这样才允许使用日志文件将数据库恢复到介质故障前的最后一秒(即比备份时间晚得多的时间 - 只要拥有自备份以来写入的所有日志文件的副本)。备份时间)。也就是说,只有这才是人们通常期望从不断更新的数据库中得到的“真正的备份”。

(只是为了安全起见:请注意,在数据库运行时复制内部数据库文件将没有任何帮助,除非采取特殊的预防措施:由于复制需要一些时间,因此会产生不一致的文件视图。检查如果在复制文件之前无法关闭 DBMS,请参阅 DBMS 手册进行“热备份”。保护日志文件也很重要,例如将它们复制到两个独立的磁盘上。在 Oracle 中,必须切换到 ARCHIVELOG 模式才能恢复日志文件。确保日志文件在一段时间后不会被覆盖。一般来说,真正为介质故障做好准备需要大量知识,并且还需要在不同计算机上进行实际测试。逻辑备份可能更简单,并且风险较小需要的时候就完全无法使用了,因为文件格式比较简单。不过,很早以前,我在Oracle导出中破坏了德国国家字符,因为当时ASCII是默认的字符编码。)