无法升级到 WSO2 APIM 2.1.0 到 WSO2 APIM 2.6.0

Not able to upgrade to WSO2 APIM 2.1.0 to WSO2 APIM 2.6.0

我们使用 WSO2 APIM 2.1 和 PostgreSQL,使用 docker 容器和导入导出 .war 文件。我尝试通过下载最新版本 (3.0) 和 api-import-export-3.0.0-m33.war 进行升级,但无法加载导入导出 war。所以我尝试升级到 APIM 2.6.0,因为它可以与 wso2am-2.6.0.zip 和 api-import-export-2.6.0-v2.war 一起使用。将其更改为 postgres db 后,根据 WSO2 文档,我更改了所有配置文件中的密码、信任库和密钥库。但是现在我遇到了以下错误。

ERROR:  relation "idn_oidc_scope" does not exist at character 23
ccc-api-db       | STATEMENT:  SELECT COUNT(ID) FROM IDN_OIDC_SCOPE WHERE TENANT_ID=
ccc-apim         | [2020-01-14 10:18:11,832] ERROR - OAuth2ServiceComponent Error while activating OAuth2ServiceComponent.
ccc-apim         | org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception: Error while loading the top scope id for the tenant: -1234
ccc-apim         |  at org.wso2.carbon.identity.openidconnect.dao.ScopeClaimMappingDAOImpl.hasScopesPopulated(ScopeClaimMappingDAOImpl.java:300)
ccc-apim         |  at org.wso2.carbon.identity.oauth2.internal.OAuth2ServiceComponent.activate(OAuth2ServiceComponent.java:98)
ccc-apim         |  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
ccc-apim         |  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
ccc-apim         |  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
ccc-apim         |  at java.lang.reflect.Method.invoke(Method.java:498)

ccc-api-db       | ERROR:  relation "mb_dtx_xid" does not exist at character 45
ccc-api-db       | STATEMENT:  SELECT FORMAT_CODE,BRANCH_ID,GLOBAL_ID FROM MB_DTX_XID
ccc-apim         | [2020-01-14 10:18:43,092] ERROR - ApplicationRegistry org.wso2.andes.kernel.AndesException: Error occurred while recovering DtxBranch 
ccc-apim         | [2020-01-14 10:18:43,093] ERROR - Main Exception during startup. Triggering shutdown 
ccc-apim         | org.wso2.andes.kernel.AndesException: Unable to initialise application registry
ccc-apim         |  at org.wso2.andes.server.Broker.startupImpl(Broker.java:307)
ccc-apim         |  at org.wso2.andes.server.Broker.startup(Broker.java:110)
ccc-apim         |  at org.wso2.andes.server.Main.startBroker(Main.java:217)
ccc-apim         |  at org.wso2.andes.server.Main.execute(Main.java:206)
ccc-apim         |  at org.wso2.andes.server.Main.<init>(Main.java:54)
ccc-apim         |  at org.wso2.andes.server.Main.main(Main.java:47)
ccc-apim         |  at org.wso2.carbon.andes.internal.QpidServiceComponent.startAndesBroker(QpidServiceComponent.java:396)

这些表不在 APIM 2.1.0 中。它似乎是 2.6.0 的一部分。但我不确定这些错误,也不知道租户 -1234。

这方面的任何帮助都会有所帮助。

另外让我们知道 APIM 3.0 与哪个版本的导入导出 war 文件兼容?

APIM 2.6.0 导入导出工具的兼容版本是"api-import-export-2.6.0-v14.war"[1]。 在 APIM 3.0.0 中,您可以按照此文档[2]来执行此操作。

[1]。 https://docs.wso2.com/display/AM260/Migrating+the+APIs+to+a+Different+Environment [2]. https://apim.docs.wso2.com/en/next/Learn/APIController/migrating-apis-to-different-environments/

从 APIM 2.1 到 2.6 有 MB 存储数据库脚本更改。因此,请确保您遵循了此迁移文档 https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release#210 中 "Step 2 - Upgrade WSO2 API-M 2.1.0 to 2.6.0" 下的第 5 步。它将修复您遇到的以下错误。

ERROR:  relation "mb_dtx_xid" does not exist at character 45

IDN 数据库脚本从 APIM 2.1 到 2.6 发生了变化。因此,请确保您遵循了此迁移文档 https://docs.wso2.com/display/AM260 中 "Step 2 - Upgrade WSO2 API-M 2.1.0 to 2.6.0" 下的第 6 步 /Upgrading+from+the+Previous+Release#210。它将修复您遇到的以下错误。

relation "idn_oidc_scope" does not exist at character 23

回答您的其他问题,-1234 是超级租户的租户 ID carbon.super