通用数据库备份/提取格式

时间:2009-10-07 18:32:18

标签: database backup extract

是否存在通用数据库备份/提取格式?

我将解释我的来源:我们的应用程序支持多个数据库供应商,DB2,MsSql,MySql和Oracle。目前,当我们向客户请求备份时,他们必须以供应商特定格式进行完整备份。

我们有一个小而强大的本地实用程序,它允许我们从任何数据库供应商完全或部分导入和导出。不幸的是,常见的提取格式是dBase表,它不能很好地工作,因为我们现在使用的是不支持的SQL字段类型。

解决方案是使用现有的行业标准备份/提取格式(如果存在)。虽然我不介意发明自己的格式,但行业标准格式会有更多的可能性。

是否存在或者我必须发明一个?

提前致谢,

斯蒂芬。

5 个答案:

答案 0 :(得分:1)

仅供参考:最后我决定使用SQLite作为格式。我们有几个原因:

  1. 使用单个文件,非常方便运输。
  2. 支持我们需要的所有字段类型。
  3. 支持多种平台和语言。
  4. 是开源的,免费的。
  5. 占地面积小。
  6. 快速追加记录。
  7. 我们的应用程序可以直接与SQLite数据库对话。
  8. 当我们从客户那里恢复备份(或提取)时,第7号肯定是硬道理,我们不需要恢复它,但可以直接连接到它。

答案 1 :(得分:0)

XML怎么样? CSV?

答案 2 :(得分:0)

我所知道的所有DBMS(包括您列出的所有DBMS)都支持导出和导入CSV

对于奖励积分,compress出口以节省空间。

答案 3 :(得分:0)

唯一的通用导出格式是文本转储主题的一些变体。

有多种可能的格式 - 固定或分隔(或分隔)。 分隔时,可以是CSV或其他一些相关格式。 逃避约定,尤其是嵌入式换行符,往往是特殊的。

另一个棘手的部分是不同的DBMS如何更喜欢编码二进制数据BLOB值--Base64,hex,......以及可能还有其他一些......

XML也是一种可能性,但没有关于使用哪种XML模式或DTD的标准化。

答案 4 :(得分:0)

我认为您必须寻找能够提取数据的工具。

这里有一个例子:http://www.clevercomponents.com/products/datapump/ibdatapump.asp

它不会特别适合您的需要,但可能是它的出路。