在 Windows/XAMPP 上转储 Trac DB

在 Windows/XAMPP 上转储 Trac DB

我在装有 XAMPP 的 WindowsXP 机器上运行了一个 Trac 实例。我正尝试将 trac 实例迁移到较新的基于 Linux 的机器上。但是,我很难让数据库配合。

我尝试用以下命令转储数据库:

sqlite3 C:\tracroot\db\trac.db ".dump" >> mysqldump.sql

但生成的文件大部分是空的:

BEGIN TRANSACTION;
COMMIT;

所以这是不对的。据记录,我的 trac 实例现在正在运行,并且似乎可以完全访问 DB 的所有内容。但 sqlite3(位于 C:\xampp\apache\bin)似乎无法从文件中获取任何信息。DB 文件本身有标题“SQLite 格式 3”,所以这似乎是正确的。

我需要知道以下两件事之一:

  • 如何让这个转储工作或
  • 将 Trac 数据库迁移到新机器的另一种方法。

更新:当我尝试在 sqlite3 中打开 .db 文件时,出现错误Error: unsupported file format。它是什么格式,为什么不受支持?

答案1

我的 sqlite3 二进制文件显然是旧版本,并且与 trac 使用的 DB 版本向后不兼容。我更新到较新的 sqlite3 二进制文件,一切正常。

答案2

显然需要办理移民手续。

你有机会看过吗http://trac.edgewall.org/wiki/TracMigrate

答案3

您确定您当前正在使用 sqlite 作为后端数据库吗?(检查您的trac.ini[trac] database = sqlite:db/trac.db。)可能是您拥有的 db/trac.db 是初始设置遗留下来的,但数据实际上存储在另一个数据库中。

相关内容