WSo2 EMM - 应用程序管理数据库错误

2024-05-03

运行 WSo2 EMM 1.1.0,除了一个大问题外,一切都工作正常。

从我第一次单击“应用程序管理”选项卡中的应用程序那一刻起,只要服务器正在运行,WSO2EMM_DB.h2.db 文件就会开始稳定增长,即使完全没有任何更改。最终,它变得如此之大,以至于单击该选项卡上的应用程序需要花费相当长的时间才能加载使用该应用程序的设备列表。我们聊了 5 分钟以上,它就完全无法使用了。我每次都检查错误日志,没有发现任何错误。

重新启动服务器无法解决该问题。即使我在“应用程序管理”选项卡上单击某个应用程序一次,并且不再单击,数据库文件也会继续增长。即使重新启动服务器并且不登录EMM页面,它也会继续增长。

到目前为止,我发现唯一可能有帮助的是保留数据库文件的备份副本,并在当前文件变得太大时覆盖当前文件。显然这不是一个解决方案,因为每次服务器上发生更改时我都需要创建一个新的备份文件,最终数据库文件也会因此变得太大。

H2 数据库也不是问题。我不仅多次尝试重新开始并有相同的行为,而且here https://stackoverflow.com/questions/26585979/wso2emm-app-management-never-returns-list-of-users-with-app-installed-not-inst这是我能找到的关于这个问题的唯一信息,而且无论是在 H2 还是 MySQL 上,他们都遇到了这个问题。

一个多月以来我一直在尝试寻找解决方案,但没有成功。任何帮助,将不胜感激!

EDIT:看起来这可能是主题EMM-826 https://wso2.org/jira/browse/EMM-826。不幸的是,到目前为止,该错误报告似乎还没有得到回应。

EDIT 2: EMM-826 https://wso2.org/jira/browse/EMM-826关闭并显示一条消息,内容如下:

此问题已在 EMM 1.1.0 GA 最新包中修复。请获取产品的所有补丁/从最新来源构建产品[https://github.com/wso2/product-emm https://github.com/wso2/product-emm] 然后再试一次。

不幸的是,这对我不起作用。我不确定我到底做错了什么,所以我将列出我所做的尝试修复它:

  1. 从以下位置下载了 EMM 1.1.0 ziphttp://wso2.com/products/enterprise-mobility-manager/ http://wso2.com/products/enterprise-mobility-manager/.

  2. 从以下位置下载了 zip 文件https://github.com/wso2/product-emm https://github.com/wso2/product-emm并将其中的文件粘贴到我的 EMM_HOME 目录中。

  3. 当这不起作用时,我搜索了补丁,发现我只使用了补丁 1-6。在文档中我发现我可以下载补丁 7-12here http://maven.wso2.org/nexus/content/groups/wso2-public/org/wso2/carbon/WSO2-CARBON-PATCH-4.2.0/。由于某种原因,补丁 9 和 10 无法正常工作;导致我无法访问 EMM 仪表板或发布者。我只能访问 Carbon 管理器。不过,我能够使补丁 7、8、11 和 12 正常工作 - 行为没有改变。

以下是我重现该问题所采取的步骤:

  1. 设置 EMM 的新副本后,我以管理员身份登录 EMM 仪表板,设置用户帐户,并通过发布者上传应用程序。

  2. 将设备注册到我设置的用户帐户。在本例中,Android 设备运行 Android 4.2.2。

  3. 从仪表板,我转到应用程序管理并单击我上传的应用程序。设备列表会加载,但从那时起,数据库文件开始增长,最终在几个小时后变得如此之大,以至于设备列表永远无法加载。

请帮忙!


也发现这种情况发生,快速查看一下,这是 WSO2EMM_DB.notifications 表。似乎随着时间的推移保留所有通知的历史记录,并且应用程序安装的信息来自未优化的查询,这些查询会随着表的增长而降级。您“可以”从表中删除所有行,当设备“检查”并报告其信息时,它将重新填充。

但是您可能想编写一个查询来保留每个用户每种类型的最新通知(我将其留给其他人......)并且正如所提到的,它显然已在最新版本中修复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WSo2 EMM - 应用程序管理数据库错误 的相关文章

  • 如何在SQLite中的两个表之间复制数据?

    我有两个具有不同列的表 如下所示 table1 id title name number address table2 id phone name address 如何将数据 名称 地址 从表 1 复制到表 2 我的问题有两种情况 第一 t
  • 无法更改 MS Access 2007 上的数据类型

    我有一个巨大的数据库 800MB 其中包含一个名为 上次修改日期 的字段 目前该字段作为文本数据类型输入 但需要将其更改为日期 时间字段以执行一些查询 我有另一个完全相同的数据库 但其中只有 35MB 的数据 当我更改数据类型时 它工作正常
  • ORDER BY id 或 date_created 显示最新结果?

    我有一个表 实际上有几个 我想首先从中获取最新条目的结果 这是我的ORDER BY条款选项 date created INT 从不改变值 id 当然是INT AUTO INCRMENT 两列应同等地代表记录插入的顺序 我自然会使用date
  • 如何列出表中的所有列?

    对于各种流行的数据库系统 如何列出表中的所有列 对于 MySQL 请使用 DESCRIBE name of table 只要您使用 SQL Plus 或 Oracle 的 SQL Developer 这也适用于 Oracle
  • 如何删除 WSO2 Identity Server 中的租户?

    在 v 4 6 0 中 我们无法通过 UI 删除 tenat 只能禁用 但是 我看到 TenantMgtAdminService 肥皂服务上有一个 deleteTenant 方法 我尝试调用此服务 但收到错误消息 从日志来看 它有 org
  • 我应该定义索引(A)和索引(B),还是索引(A,B),或者两者都定义?

    在我的表中 我有两个密切相关的列 A 和 B 我应该考虑哪些因素来决定是否创建 索引 A 和索引 B 索引 A B 以上两者 如果我 仅使用类似的查询where A 5 and B 10 并且从不喜欢where A 5 也可以使用类似的查询
  • 为 java 项目创建安装

    我创建了一个 java 项目 它使用数据库来检索 编辑和保存数据 我使用 Netbeans 完成了该项目 现在我想在该项目之外创建一个安装 为此 我想包含与项目一起安装的数据库 我用来连接数据库的代码是 Class forName com
  • Hibernate saveOrUpdate 与更新与保存/持久

    我正在努力理解休眠方法之间的细微差别 saveOrUpdate update save persist 我知道网站上有一些类似的问题 Hibernate中不同的保存方式有什么区别 https stackoverflow com questi
  • 在 wso2 APIM 中以编程方式添加作用域

    我可以在 WSO2 APIM 中以编程方式创建范围吗 我有一个要求 用户可以通过 UI 创建新角色并将一些权限与新角色关联 用户不会使用 WSO2 Web 界面 相反 他将使用内部网络应用程序 为此 我必须以编程方式创建作用域并将 API
  • SQLite (Android):使用 ORDER BY 更新查询

    Android SQLite 我想要在 myTable 中的其他行之间插入行在android中使用SQLite 为此 我尝试增加从第 3 行开始的所有行的 id 这样 我就可以在位置 3 处插入新行 myTable 的主键是列 id 表中没
  • Android中不同线程的数据库访问

    我有一个在 AsyncTasks 中从互联网下载数据的服务 它解析数据并将其存储在数据库中 该服务持续运行 当服务写入数据库时 活动会尝试从数据库中读取更改 我有一个数据库助手 有多种写入和读取方法 这会导致问题吗 可能尝试从两个不同的线程
  • 如何更新 pl/sql 中嵌套表的列? [复制]

    这个问题在这里已经有答案了 我正在尝试在表中创建一个可以存储多个值的列 如下所示 我有一个学生id std和一个名为marks可以采用几个值 例如2 3 4 我想更新此列表以添加另一个标记2 3 4 5但我不知道怎么做 我如何更新专栏mar
  • 自动删除主键序列中的间隙

    我正在创建一个网页 该网页根据用户操作将数据存储到 MySQL 数据库中 数据库有很多行 行的主键是列 rowID 它只是按顺序对行进行编号 例如 1 2 3 4 用户可以选择删除行 问题是当用户删除最后一行以外的行时 rowID 中有一个
  • 计算 mysql 数据库行数的最佳方法

    在遇到 mysql 查询加载时间慢的问题后 我现在正在寻找计算行数的最佳方法 我曾经愚蠢地使用过mysql num rows 函数来做到这一点 现在意识到这是最糟糕的方法 我实际上正在制作一个分页来用 PHP 制作页面 我找到了几种计算行数
  • sqlite3从打印数据中删除括号

    我创建了一个脚本 用于查找数据库第一行中的最后一个值 import sqlite3 global SerialNum conn sqlite3 connect MyFirstDB db conn text factory str c con
  • 一个表可以有多个主键吗?

    我现在很困惑 也许你可以帮助我更好地理解这个问题 即一个表可以有两个主键 如果是 那么如何 如果没有 那为什么 您询问是否可以有多个主键field你当然可以 您只能有一个主键 但它可以包含唯一标识行所需的任意数量的列 创建表时使用类似这样的
  • SSDT SQL Server 数据库项目中用于架构比较的命令行/API?

    在 Visual Studio 2012 中 我们有Schema Compare http msdn microsoft com en us library hh272690 28v vs 103 29 aspx in SSDT http
  • 从对象定义生成数据库表

    我知道有几种 自动 方法可以创建数据访问层来操作现有数据库 LINQ to SQL Hibernate 等 但我有点厌倦了 我相信应该有更好的做事方式 比如 在 Visio 中创建 更改表 使用 Visio 的 更新数据库 创建 更改数据库
  • 使用连接池后如何处理过多的并发连接?

    Scenario 假设您有一个拥有大量流量的网站或应用程序 即使使用数据库连接池 性能也会受到真正的打击 站点 应用程序甚至可能崩溃 因为并发连接太多 Question 人们有什么选择来处理这个问题 我的想法 我在想有这个问题的人可以创建多
  • dbms_xmlgen.getxml - 如何设置日期格式

    我们使用 dbms xmlgen getxml 实用程序通过 SQL 查询生成 xml 该查询从几乎 10 15 个相关表中获取数据 默认情况下 日期格式生成于dd MMM yy格式 有什么方法可以在 dbms xmlgen getxml

随机推荐

  • 如果新块大小小于初始块大小,我是否应该强制重新分配检查?

    在这种情况下 realloc 会失败吗 int a NULL a calloc 100 sizeof a printf 1 ptr d n a a realloc a 50 sizeof a printf 2 ptr d n a if a
  • Keycloak 重定向 URI 提供 https://localhost 而不是 http://localhost

    我正在尝试在 Keycloak 上验证 Cordova Android 应用程序 我之前提出过一个关于它的问题 但我在这里将其简化为仅提供要点 因为我在过去 2 3 天中发现了很多东西 Cordova Android 应用程序中的网页不可用
  • 在 JSFiddle 上运行的简单 AngularJS

    如何用以下代码制作 jsfiddle div ul li num li ul div
  • 主表节点缺失

    我已经安装了 Microsoft SQL Server 2012 Express 当我启动 Management Studio 时 我无法查看系统数据库上的任何 表节点 这是一个错误吗 这是一个错误 如以下链接所述 http connect
  • Laravel 4 - 工匠错误 SQLSTATE[42000]

    我正在尝试为我的用户表创建一个新的迁移 我有以下架构 Schema create users function t t gt increments id t gt string username 16 t gt string passwor
  • 非时间戳列上的 Spark 结构化流窗口

    我收到以下形式的数据流 id timestamp val xxx 1 12 15 25 50 1 2 12 15 25 30 1 3 12 15 26 30 2 4 12 15 27 50 2 5 12 15 27 30 3 6 12 15
  • 从字典列表中删除具有重复值的字典

    我有一个字典列表如下 ppm error 5 441115144810845e 07 key Y7 obs ion 1054 5045550349998 ppm error 2 3119997582222951e 07 key Y9 obs
  • C++ 中的显式构造函数调用

    1 以下语句的返回值是多少 obj classX classX 2 关于C 中构造函数的另一个问题 classX 创建一个对象 编译器生成的扩展代码是什么 构造函数不返回值 就像函数返回一样void 对于第二个问题 编译器将调用构造函数 然
  • 如何正确模拟 i18next

    这是我的函数和测试的简化版本 虽然我嘲笑了 useTranslation 我收到以下错误 您正在传递一个未定义的模块 请检查您的对象 传递给 i18next use 7 i18n 8 use Backend gt 9 use initRea
  • 如何通过 Robobrowser 使用代理

    我正在与http robobrowser readthedocs org en latest readme html http robobrowser readthedocs org en latest readme html 一个基于 b
  • `success` 方法已被弃用。使用“then”方法代替

    您好 我是 Vue 世界的新手 这是我收到的警告 成功方法已被弃用 请改用 then 方法 这是代码 apiURL api movies new Vue el app data movies ready function this getM
  • SwiftUI - 方向更改后,NavigationView 标题和后退按钮被夹在状态栏下

    每当我将设备旋转到横向并再次返回时 顶部NavigationView 包括标题和后退按钮 被剪切在状态栏下方 最小可重现示例 struct ContentView View var body some View NavigationView
  • 如何使用 IPython 的事后 %debug 启动 pudb?

    I just 开始了 https documen tician de pudb starting html using breakpoint and pudb 这太棒了 现在我该如何制作 IPython debug神奇的启动pudb 注 p
  • 领域对象返回 nil (Swift)

    我有一个自定义多边形对象 因此我可以将地图叠加保存到领域 我能够成功创建这个对象 但是当我想检索 var 多边形对象时 它返回 nil 当我打印多边形对象时 它可以很好地打印出所有数据 这是打印内容的示例 CustomPolygon nam
  • 通过 MailChimp 发送电子邮件

    我认为问题出在附近 api gt listSubscribers include libs mailchimp MCAPI class php options array list id gt list id subject gt Prov
  • 如何等待在react.js中渲染视图直到$.get()完成?

    您好 我正在用 Reactjs 编写一个聊天客户端 并希望使用从 REST 调用检索到的数据来渲染我的组件 但是 我的组件是在 REST 请求返回数据之前渲染的 当我在我的子组件中调用 this props 时 这会导致错误 var Mai
  • 内部没有图像的链接的 jQuery 选择器

    我绑定一个click链接功能 body on click a function do something 现在我正在寻找一个仅在链接不包含图像标签时才匹配的选择器 有点类似于a not img but img是子元素 我怎样才能做到这一点
  • 修复 Vanilla JS Accordion 以一次展开一个选项卡

    我有这个手风琴工作 但是 我试图弄清楚如何一次仅展开一个 单击另一个选项卡 另一个选项卡关闭 我尝试了不同的方法来删除该类 但没有得到预期的结果 我也一直在尝试重构for循环到 ES6 标准 但这不是一个问题 样式是 Sass 因此在 JS
  • 从文本文件加载数据然后将其存储到数据库的最快方法

    我有问题 我正在开发一个项目 但我陷入了这一部分 我想从文本文件加载数据并将其存储到数据库访问中 things 是每个文本文件内的数据 大约 12 000 行数据 每个文本文件大约需要 10 分钟来处理 注意 在存储数据之前 我将文本文件中
  • WSo2 EMM - 应用程序管理数据库错误

    运行 WSo2 EMM 1 1 0 除了一个大问题外 一切都工作正常 从我第一次单击 应用程序管理 选项卡中的应用程序那一刻起 只要服务器正在运行 WSO2EMM DB h2 db 文件就会开始稳定增长 即使完全没有任何更改 最终 它变得如