mysql—wso2 identity server的新版本,将用户存储更改为mariadb,缺少几个表

erhoui1w  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(342)

wso2 identity server 5.6版
红帽7.5
mariadb-5.5.56-mariadb mariadb服务器
使用附带的mysql连接器
遵循有关将用户存储从h2 embedded更改为mysql/mariadb的官方文档。运行了is\u home/dbscripts中的mysql5.7.sql脚本和is\u home/debscripts/identity中的mysql-5.7.sql脚本
is启动并似乎连接到mariadb用户存储,但是,日志抛出了几个java异常,这些异常都与丢失的表有关,这些表实际上是丢失的:

Table 'regdb.IDN_CLAIM_DIALECT' doesn't exist
Table 'regdb.IDN_CLAIM' doesn't exist
Table 'regdb.IDN_SCIM_GROUP' doesn't exist
Table 'regdb.WF_BPS_PROFILE' doesn't exist
Table 'regdb.IDP' doesn't exist

我将打开.sql文件并进行比较,但是文档有点含糊不清,我在这里阅读混合解决方案。只需要在新创建的regdb数据库中为is5.6创建正确表的当前.sql文件。
谢谢大家的时间。
主数据源.xml

<providers>
        <provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider>
    </providers>

    <datasources>

        <datasource>
            <name>WSO2_CARBON_DB</name>
            <description>The datasource used for registry and user manager</description>
            <jndiConfig>
                <name>jdbc/WSO2CarbonDB</name>
            </jndiConfig>
            <definition type="RDBMS">
                <configuration>
                    <url>jdbc:mysql://localhost:3306/regdb</url>
                    <username>regadmin</username>
                    <password>regadmin</password>
                    <driverClassName>com.mysql.jdbc.Driver</driverClassName>
                    <maxActive>50</maxActive>
                    <maxWait>60000</maxWait>
                    <testOnBorrow>true</testOnBorrow>
                    <validationQuery>SELECT 1</validationQuery>
                    <validationInterval>30000</validationInterval>
                    <defaultAutoCommit>false</defaultAutoCommit>
                </configuration>
            </definition>
        </datasource>
ru9i0ody

ru9i0ody1#

不要将注册表数据库与标识数据库混合使用。为标识表创建单独的数据库,并从master-datasources.xml引用它。从identity.xml中引用相同的jndiconfig。如果仍然有疑问,请发布master-datasources.xml和identity.xml。

6psbrbz9

6psbrbz92#

您提到的所有缺少的表都包含在is_5.6.0_home/dbscripts/identity/mysql.sql中。请确认已正确导入脚本。
如果你想移动整个碳数据库,
创建新数据库(无需导入)
如前所述更新master-datasources.xml
在服务器首次启动时使用-dsetup参数自动创建数据库表(wso2server.sh-dsetup)
注意:如果使用-dsetup命令填充mysql 5.7或更高版本,请将dbscripts/中的所有mysql5.7.sql文件重命名为mysql.sql。
如果只想移动用户存储数据库
将新数据源添加到master-datasources.xml,而不是更新数据库
将user-mgt.xml中的“datasource”属性修改为新的数据源
阅读有关分离数据库和集群的更多信息,https://docs.wso2.com/display/is560/setting+up+separate+databases+for+clusteringhttps://docs.wso2.com/display/admin44x/sharing+databases+in+a+集群

相关问题