数据库问题

数据库问题与连接到 DB2 和 MS SQL Server 以及从这些数据库检索信息的问题相关。

Windows MS SQL Server

在导入期间, MS SQL Server 使用 99% 的物理内存。
要解决此问题,请设置 MS SQL Server可使用的最大内存量。 有关详细信息,请参阅 MS SQL Server 文档中的服务器内存选项如何:设置固定内存量( SQL Server Management Studio)
登录到 MS SQL Server 的过程失败。
在 MS SQL Server的登录过程中,显示以下错误:
Login failed for user 'username'. The user is not associated with a trusted SQL Server connection.
(Microsoft SQL Server, Error: 18452).

此错误的原因是 MS SQL Server 配置为使用 Windows 认证方式,并且不允许使用 MS SQL Server 帐户。 要解决此问题,请在 MS SQL Server中启用 MS SQL Server 认证。 更多信息,请参阅启用 MS SQL Server 身份验证模式

Linux DB2

License Metric Tool 无法连接其数据库。
tema.log 文件中写入了以下错误之一:
  • 连接被拒绝
  • 已重置连接
  • SqlTimeoutException
  • ERRORCODE=-4499, SQLSTATE=08001
要解决该问题,请执行以下步骤:
  1. 要确保 License Metric Tool 数据库已激活,请运行以下命令。
    db2 activate db database_name
  2. 要检查是否 DB2 在默认端口上监听,请使用 netstat -anp 命令。 的默认端口 DB2 取决于数据库版本。
    • DB2 11.5.6 及更高版本:25000
    • DB2 11.5.5 及以下版本:50000
    其中一个端口应分配给监听 DB2 进程: db2sysc。 然而,默认端口可能已被第三方软件( OneAgent 如Dynatrace)占用。 在这种情况下,该 netstat 命令应提示哪个进程占用了默认 DB2 端口。
  3. 如果默认 DB2 端口被其他软件占用,请更改 DB2 端口。 有关更多信息,请参阅以下信息。
    1. 在服务器上更新用于TCP/IP通信的服务文件
    2. 在服务器上更新数据库管理器配置文件以支持TCP/IP通信
  4. 更新中的 DB2 端口 License Metric Tool。 有关更多信息,请参阅: 更改数据库连接参数
无法在启用单点登录的 License Metric Tool Web 用户界面中建立与数据源的连接。
在“数据源”窗格中保存连接参数后,显示一条错误消息:
Unexpected WebSEAL Response.
Code: 0x38cf04d3
Error: DPWWA1235E
Please contact your system administrator. This may indicate an insufficient proxy HTTPS timeout.
要成功保存连接参数,请在 ISAM 逆向代理配置中添加 https-timeout 参数。 例如,要将超时设置为 5 分钟,请执行以下步骤。
  1. 登录到 IBM Security Access Manager。
  2. 在顶部导航栏中,点击安全网页设置 > 管理 > 反向代理
  3. 选择实例后,从反向代理栏右侧的下拉列表中选择 “管理 > 配置 > 编辑配置文件 ”。
  4. 高级配置文件编辑器中,查找 https-timeout 参数,然后将值指定为 300。
    示例:
    https-timeout = 300
  5. 单击保存
升级 DB2后, License Metric Tool 服务器无法启动,并且 SRVE0296E 错误写入 tema.log 文件中。
升级 DB2后, License Metric Tool 服务器无法启动,因为它无法访问 SCHEMA_MIGRATIONS 表。 在 tema.log 文件中写入了以下错误。
com.ibm.ws.webcontainer.webapp I SRVE0296E: 
[tema][/][Servlet.LOG]:.ERROR: initialization failed:
.org.jruby.rack.RackInitializationException: DBNAME: 
temadb - Java::ComIbmDb2JccAm::SqlSyntaxErrorException: 
The name of the object to be created is identical 
to the existing name "DBO.SCHEMA_MIGRATIONS" of type "TABLE".. 
SQLCODE=-601, SQLSTATE=42710, DRIVER=3.72.24from 
com.ibm.db2.jcc.am.hd.a(com/ibm/db2/jcc/am/hd.java:813)...

有关如何解决问题的信息,请参见: SQL0443N ,调用目录函数(如 SYSIBM.SQLTABLES )时使用 -727

系统重新引导后,无法启动 DB2 服务。 当非 root 用户安装 DB2 时,会发生此问题。
DB2 日志文件 db2diag.log 包含以下错误。
FUNCTION: DB2 UDB, SQO Memory Management, 
"No Storage Available for allocation", 
DIA8305C Memory allocation failure occurred.
要解决此问题,请更改 ulimit 值。 有关更多信息,请参阅以下链接。
在创建数据库时,All-in-One 安装失败。 BigFix® 数据库。 在 BESInstall.log 日志中写入以下错误:SQL1205N The code page "1208" and/or territory code "0" that has been specified is not valid.
要解决问题,请执行以下步骤。
  1. 转至 <AIO installer>/prereq/db2/server 目录,然后打开 db2_run_setup.sh 脚本。
  2. exit $rc 行前添加以下三行。
    su - db2inst1 -c 'db2set DB2CODEPAGE=1208'
    su - db2inst1 -c 'db2set DB2TERRITORY=1'
    su - db2inst1 -c 'db2set DB2COUNTRY=1'
  3. 转至 <AIO installer>/tools 目录,然后运行 cleanlmtenv.sh 脚本以除去已安装的所有组件。
  4. 再次运行一体化安装程序。

两个数据库

复原 BigFix 数据库后,新数据不会显示在 License Metric Tool中。
为确保仅将新创建的数据导入到 License Metric Tool,将使用所谓的序号标记存储在 BigFix 数据库中的数据。 此数字随每次更改而递增。 每个导入都包含从上次成功导入到当前序号期间报告的序号开始的数据。

复原 BigFix 数据库时,会将序号复原为创建数据库备份时的值。 因此,复原后的序号可能低于上次成功导入期间报告的序号。 在这种情况下,数据库复原后的第一次导入不包含任何数据。 在该导入之后,将更新序号,并且下一个导入将包含新数据。

但是,不会导入数据库复原与首次成功导入之间的时间段内的数据,这将产生间隔。 要解决此问题,请转到 “管理” > “高级服务器设置 ”,并将该 resynchronize_datasources_once 参数的值改为 true。 然后,运行导入。 此导入将非常耗时,因为它将从复原的 BigFix 数据库导入所有软件扫描数据以弥补差距。 后续导入将以正常操作方式运行。

正在检查数据库名称。
缺省数据库名称为 TEMADB,但是它自较早版本以来已更改,其中数据库名为 SUADB。 您可以在 database.yml 文件中的下列其中一个目录中检查数据库的名称。

Linux /opt/ibm/LMT/wlp/usr/servers/server1/config/database.yml

Windows C:\Program Files\IBM\LMT\wlp\usr\servers\server1\config\database.yml

在较早版本中,缺省安装路径为 C:\Program Files\IBM\SUA/opt/ibm/SUA