干净安装后恢复Team City数据库

时间:2014-02-24 11:48:12

标签: backup teamcity hsqldb

我重建了构建服务器操作系统,所以我安装了一个干净的Team City,现在我正在尝试使用命令行工具恢复备份:

maintainDB.cmd restore -F <full file name of TeamCity backup file> -T <path to the database.properties file>

但它很容易失败:

Failed: The file "<path to the database.properties file>" doesn't doesn't contain connectionUrl property. Ignore settings from this file.

我正在使用内置的基于文件的数据库。备份是从TeamCity 7.1完成的,现在我安装了8.1(最新版本)。我怎样才能让它恢复?

2 个答案:

答案 0 :(得分:3)

文档似乎质量很差。你需要运行的是:

maintainDB.cmd restore -F <full file name of TeamCity backup file> -T c:\TeamCity\config\database.hsqldb.properties.dist

或安装中database.hsqldb.properties.dist的正确路径。

答案 1 :(得分:3)

根据文件:

  

从备份文件恢复TeamCity服务器:

     
      
  1. 确保TeamCity服务器未运行。
  2.   
  3. 创建空目标TeamCity数据目录,配置外部数据库并将数据库驱动程序放入lib / jdbc子目录。
  4.   

这可能是你问题的根源。您需要创建一个空的TeamCity数据目录,然后获取 .BuildServer \ config \ database.hsqldb.properties.dist 文件 - 它是一个模板文件 - 并将其另存为 database.hsqldb。特性。该文件包含连接URL属性: _connectionUrl = JDBC:HSQLDB:文件:$ TEAMCITY_SYSTEM_PATH / buildserver _

确保您的连接网址正确

  

3.使用位于/ bin目录中的maintainDB实用程序(仅在TeamCity .tar.gz和.exe发行版中可用)。   使用restore命令:

    maintainDB[cmd|sh] restore -F <full file name of TeamCity backup file> -A <path to TeamCity Data Directory> -T <path to the database.properties file of the target database>
  

如果设置了TEAMCITY_DATA_PATH环境变量,则可以省略-A参数。   如果要将数据还原到创建备份的同一数据库中,则可以省略-T参数。

目标数据库的database.properties文件的路径必须是从模板创建的新 database.hsqldb.properties 的路径。