我尝试按照说明将WSO2 IS作为KM从5.6.0升级到5.7.0,将API Manager从2.5.0升级到2.6.0,并按照以下说明进行操作: https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release+when+WSO2+IS+is+the+Key+Manager
https://docs.wso2.com/display/IS570/Upgrading+from+the+Previous+Release https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release
在说明中没有提到我需要再次从/dbscripts/apimgt/mysql.sql将SQl脚本导入到数据库apimgt中,原因是5.7.0 IS是因为KM在该数据库中具有的表比5.6.0版本还多。 / p>
IS升级期间,我的日志中有错误:
ERROR {org.wso2.carbon.is.migration.service.SchemaMigrator} - Error occurred while executing SQL script for migrating database
java.lang.Exception: Error occurred while executing : CREATE INDEX IDX_RID ON IDN_UMA_RESOURCE (RESOURCE_ID)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate key name 'IDX_RID'
ERROR {org.wso2.carbon.is.migration.service.SchemaMigrator} - Error occurred while executing SQL script for migrating database
java.lang.Exception: Error occurred while executing : CREATE INDEX IDX_SP_TEMPLATE ON SP_TEMPLATE (TENANT_ID, NAME)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate key name 'IDX_SP_TEMPLATE'
ERROR {org.wso2.carbon.is.migration.service.SchemaMigrator} - Error occurred while executing SQL script for migrating database
java.lang.Exception: Error occurred while executing : ALTER TABLE CM_PURPOSE ADD COLUMN PURPOSE_GROUP VARCHAR(255) NOT NULL, ADD COLUMN GROUP_TYPE VARCHAR(255) NOT NULL, DROP KEY NAME, ADD UNIQUE KEY (NAME, TENANT_ID, PURPOSE_GROUP, GROUP_TYPE)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate column name 'PURPOSE_GROUP'
INFO {org.wso2.carbon.is.migration.service.v570.migrator.OAuthDataMigrator} - WSO2 Product Migration Service Task : Migration starting on OAuth2 access token table.
java.lang.OutOfMemoryError: GC overhead limit exceeded
Dumping heap to /usr/lib64/wso2/wso2is-km-5.7.0/repository/logs/heap-dump.hprof ...
Unable to create /usr/lib64/wso2/wso2is-km-5.7.0/repository/logs/heap-dump.hprof: File exists
ERROR {org.wso2.carbon.is.migration.MigrationClientImpl} - Migration process was stopped.
java.lang.OutOfMemoryError: GC overhead limit exceeded
尽管有错误,但我在没有错误的情况下启动API-M后却启动了IS,但是我的API并未迁移。
我使用MariaDB 5.5。
IS的问题是什么?为什么不迁移API?
答案 0 :(得分:1)
“ 所以我不应该执行从2.1到2.4的步骤,是吗?但是在升级IS期间出现错误怎么办?”
这意味着,您是否没有执行https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release#c130adc044364015ae336f584909e3ac中的步骤2.1至2.4?
如果您已经按照https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release+when+WSO2+IS+is+the+Key+Manager#250中提到的步骤进行操作,则只需要跳过https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release#c130adc044364015ae336f584909e3ac中的2.4步骤。
还请确保已在 migration-config.yaml 文件中正确指定了以下版本。
migrationEnable: "true"
currentVersion: "5.6.0"
migrateVersion: "5.7.0"
注意:您不需要手动创建表。