通过 maintainDB 命令行工具创建备份
TeamCity .tar.gz 和 .exe 分发版提供位于 <TeamCity 安装目录>/bin
目录中的 maintainDB.bat|sh
工具。 此命令行工具使您可以备份服务器数据,恢复它,并且在不同的数据库之间迁移。 您也可以使用 UI 备份数据。
在您备份之前
在备份数据之前,建议关闭 TeamCity 服务器以将所有构建包含到备份中。 如果在 TeamCity 服务器运行并启动备份过程时,正在运行和排队的构建不会被包含在备份中。
备份文件位置和格式
备份文件的默认目录是 <TeamCity 数据目录>\备份
。
备份文件名的默认格式为 TeamCity_Backup_<timestamp>.zip
;在 YYYYMMDD_HHMMSS
格式中添加了 <timestamp>
后缀。
使用 maintainDB 实用程序执行 TeamCity 数据备份
这一部分描述了一些 maintainDB
选项。 要获得所有可用选项的完整列表,请在命令行中不带任何参数运行 maintainDB
。
要创建一个数据备份文件,从命令行启动 maintainDB
工具,然后使用 backup
命令:
TeamCity 数据备份有 一些限制。 默认情况下,如果您运行 maintainDB
实用程序而不带任何可选参数,只有数据库、服务器设置、项目和构建配置、插件和补充数据(设置历史、触发器状态、插件数据等)会被备份,而构建日志和个人更改则会被省略。
配置备份范围
要配置备份文件中所包含数据的范围,请使用以下选项:
-C
或--include-config
—— 包括构建配置设置-D
或--include-database
— 包含数据库-L
或--include-build-logs
— 包括构建日志-P
或--include-personal-changes
— 包括个人更改-U
或--include-supplementary-data
— 包含补充的(插件的)数据
通过指定上述选项的不同组合,您可以控制备份文件的内容。 例如,要创建包含所有支持的数据类型的备份,请运行
maintainDB 使用示例以进行数据备份
要创建一个带有自定义名称的备份文件,运行 maintainDB 并使用 -F
或 --backup-file
选项,且指定想要的备份文件名,但不需扩展名:
执行上述命令将在默认备份目录中创建一个具有指定名称的新 ZIP 文件。
要给自定义文件名添加时间戳后缀,请添加 -M
或 --timestamp-suffix
选项:
要在自定义目录中创建备份文件,请运行 maintainDB 并使用 -F
选项:
maintainDB 启动选项
如果您通过 TEAMCITY_SERVER_OPTS/TEAMCITY_SERVER_MEM_OPTS
环境变量自定义 TeamCity 服务器启动选项,或者使用自定义 JDK 安装来运行服务器,您可能需要运行带有相关选项的 maintainDB
脚本添加到 TEAMCITY_MAINTAINDB_OPTS / TEAMCITY_MAINTAINDB_MEM_OPTS
环境变量并以与 TeamCity 服务器完全相同的环境运行脚本,以便使用相同的 JVM。