【发布时间】:2017-04-13 16:56:54
【问题描述】:
我正在尝试通过从 wso2am-2.1.0/repository/database 复制 H2 数据库来将我的 API 从一个环境迁移到另一个环境。
我知道有一个用于导入/导出的实用程序,但我有很多 API,而这个实用程序仅由一个 API 处理。 复制数据库后,我的 API 和标签未显示在商店/发布者仪表板中。 但是如果我检查应用程序-->订阅,我可以看到这些 API。 请解释一下这种行为吗?
【问题讨论】:
我正在尝试通过从 wso2am-2.1.0/repository/database 复制 H2 数据库来将我的 API 从一个环境迁移到另一个环境。
我知道有一个用于导入/导出的实用程序,但我有很多 API,而这个实用程序仅由一个 API 处理。 复制数据库后,我的 API 和标签未显示在商店/发布者仪表板中。 但是如果我检查应用程序-->订阅,我可以看到这些 API。 请解释一下这种行为吗?
【问题讨论】:
基本上,WSO2 不建议在 H2 数据库中运行生产。我希望这是一个测试/试用场景。当您在生产环境中运行时,请使用可用于生产环境的数据库,例如 oracle、mysql、mssql 等。
这里的问题是您列出的缺少的内容来自索引。在您的情况下,如果有很多 API,则索引需要时间。 WSO2 使用 solr 来索引资源。如果将驻留在 WSO2 服务器文件夹中的 solr 目录复制到新环境中,则可以。更换文件夹前请删除新环境中的完整文件夹。
如果这不起作用,您可以按照 - https://stackoverflow.com/a/42646742/3176125 重新索引资源。
当您从一个环境迁移到另一个环境时,您需要复制位于 /repository/deployment/server/ 文件夹中的内容。它包含 API、自定义序列等的突触配置。
【讨论】: