我有 Kallithea 在我自己的带有 sqlite 数据库的服务器上运行。我想将所有这些数据移至 MySQL 数据库。如果未指定任何其他数据库,则默认 Kallithea 使用 sqlite。从 Kallithea 文档 pdf https://media.readthedocs.org/pdf/kallithea/latest/kallithea.pdf他们建议使用https://github.com/shazow/sqlalchemygrate将数据从数据库迁移到另一个。
我使用 Python pip 安装了 sqlalchemygrate,但是当我尝试迁移时,有些部分我根本不明白。帮助菜单没有明确指定如何使用迁移命令。至少我完全不明白。例如,当我尝试输入
grate migrate "sqlite:./kallithea.db" "mysql://kallithea@localhost/kallithea"
我收到错误消息
ImportError: No module named sqlite
在帮助菜单中,它说要使用
migrate METADATA ENGINE_FROM ENGINE_TO
Migrate schema or data from one engine to another.
以及如何使用它的示例
grate migrate model.meta:metadata \
"mysql://foo:bar@localhost/baz" "sqlite:///:memory:" \
我真正不明白的是它需要的元数据是什么?以及如何为此指定 sqlite .db 文件。以及如何使用拥有该数据库所有权限的用户 kallithea 将数据迁移到 mysql 中的新 kallithea 数据库。