【发布时间】:2019-05-10 14:44:43
【问题描述】:
是否可以使用TFDFBNBackup 和TFDFBNRestore 从本地文件创建和恢复远程服务器的备份?
我知道这可以通过本地服务管理器命令行工具来完成,例如 gbak 也允许这样做,但我不想在我的新 Firemonkey 应用程序(Windows、OSX、Linux)中使用这些工具。我想将功能完全编译到我的应用程序中,我只能通过 Firebird 连接访问服务器,没有文件共享。
【问题讨论】:
-
你知道TFDFBNBackup是nbackup,它和gbak完全不同吗?无论如何,Embarcadero documentation 表明这是不可能的。 Firebird 本身确实支持远程 nbackup。
-
是的,我知道。通常 gbak 后面的 ser 服务也只将文件写入服务器本地,但客户端上的 gbak 以某种方式完成了它。如果有一种无需调用命令行实用程序的方法,我也会使用更简单的 FBIBBAckup。
-
对不起,我不知道德尔福。我知道Firebird本身支持这个,我不知道是否有支持这个的Delphi组件。
-
谢谢。我还想在远程机器上创建一个服务,定期检查备份文件的存在,压缩它并创建一个二级数据库,其中包含一个包含备份的 blob 字段。听起来很奇怪,但也许可行。
-
gbak 在客户端可以通过两种方式工作:原始方式只是向服务器发出标准的 SQL 命令,在客户端接收标准查询结果集,并将它们保存到 FBK 文件中。在 FB 2.5 的一些后续版本中引入的新方法是允许在服务器上运行 gbak 服务,并通过服务 API 将 FBK 文件流式传输到客户端 - 这个新功能在 FB 2.5.x relnotes 中宣布。但是对于 nbackup 则不同: 1) nbackup 在 SQL 数据级别上不起作用,它不了解 SQL,它镜像页面 - FDB 文件块。它在低级工作。 2) 没有关于的消息
标签: delphi firebird firedac firebird-3.0