我重建了构建服务器操作系统,所以我安装了一个干净的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(最新版本)。我怎样才能让它恢复?
答案 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服务器:
- 确保TeamCity服务器未运行。
- 创建空目标TeamCity数据目录,配置外部数据库并将数据库驱动程序放入lib / jdbc子目录。
醇>
这可能是你问题的根源。您需要创建一个空的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 的路径。