安装

本工具是一个 Python 命令:specivo-rt-migration,需要 Python 3.12 或更高版本。它没有发布到 PyPI,请从 GitHub 上带标签的发布版安装。PostgreSQL(asyncpg)和 MySQL/MariaDB(aiomysql)的数据库驱动已随工具一并安装。

从发布版安装

在发布页面选择所需的发布版,然后用 uv 或 pipx 安装:

uv tool install git+https://github.com/specivo/[email protected]
# or
pipx install git+https://github.com/specivo/[email protected]

把 vX.Y.Z 替换为发布标签。两条命令都会在隔离环境中安装 specivo-rt-migration,并将其加入 PATH。

从源码检出安装

git clone https://github.com/specivo/rt-migration-tool.git
cd rt-migration-tool
uv sync
uv run specivo-rt-migration --version

验证能否运行

specivo-rt-migration --version
specivo-rt-migration --help

在哪里运行

在能访问 RT 数据库的机器上运行本工具:可以是 RT 服务器本身、数据库副本,或任何被允许连接数据库端口的机器。如果 RT 的附件存放在 Disk 外部存储中,这台机器还需要能读取对应目录(或其副本)。

本工具在一个长时间的只读事务中读取全部数据。在大型 RT 实例上,请针对副本运行,或选择业务低峰时段:事务长时间处于打开状态时,数据库在此期间无法清理旧的行版本。