DB2 for i 的 OmniFind Text Search Server (5733-OMF) 是一款无附加许可证费用的产品,最初发布于于 IBM i 6.1。这款产品允许用户使用 SQL 内置函数 CONTAINS 和 SCORE 对 DB2 文本列执行全文搜索。举例来说,如果搜索 "the cat chased a mouse",可能还会找到包含 "the cats were chasing some mice" 这一短语的文档。在 IBM i 7.1 中,该产品增加了搜索 DB2 列以外的系统对象的功能,例如 spool 文件或 IFS 流文件。最新一轮的改进增加了一些全新的存储过程,用来检查文本搜索索引和文本服务器的健康状况。本文将介绍这些有关健康检查器的增强。您可通过本文参考资料部分中提供的白皮书,了解有关 OmniFind Text Search Server 的一般背景信息。
DB2 for i 的 OmniFind Text Search Server 健康状况检查器提供了一组存储过程,用于诊断与文本搜索服务器或索引相关的配置问题。这些健康状况检查器存储过程将检查文本搜索服务器或索引是否可以正常工作,并返回一个报告,这个报告包含检测到的的所有问题。
IBM OmniFind Text Search Server 产品本身提供了最常用的系统管理用存储过程,因此用户可以非常轻松地创建和维护索引。例如,可以调用 SYSPROC.SYSTS_CREATE() 过程来创建索引,使用 SYSPROC.SYSTS_UPDATE() 过程来更新索引。然而,在某些情况下,这些管理存储过程调用可能会失败,错误原因可能如下:
- 权限不足,无法创建索引
- 未安装 Java J2SE,无法启动文本服务器
- 自动更新调度程序未启动,文本搜索索引中未包含最新数据更改
- 文本搜索服务器错误关闭,索引搜索未能成功完成
在这些情况下,健康状况检查器过程可用于诊断 OmniFind 安装问题。存储过程 SYSPROC.SYSTS_HC_USR_AUTH() 可用于检查用户是否具备创建索引所需的必要权限。SYSPROC.SYSTS_HC_GENERAL() 过程可用于验证是否已经安装了所有必备软件。SYSPROC.SYSTS_HC_IDX() 过程可用于确定索引配置是否存在问题,SYSPROC.SYSTS_HC_SVR() 过程可用于分析文本搜索服务器是否正常工作。所有这些健康状况检查器过程都会通过返回存储过程结果集的形式提供警告和错误报告。用户可以利用此类结果集的内容来识别并修复问题,或者向 IBM 支持人员提供具体信息,以便进一步进行诊断。
这项全新的 OmniFind 健康状况检查器支持是由 IBM i 7.1 的 PTF SI44462 提供的。健康状况检查器需要 IBM Application Runtime Expert (ARE) for i 的支持,ARE 是 IBM i 7.1 中的 IBM i OS (5770-SS1) 的一部分。请访问 IBM ARE 支持网站,了解有关安装 ARE 产品时的必备软件和补丁的信息。
DB2 存储过程 SYSPROC.SYSTS_HC_USR_AUTH() 用于报告调用该过程的用户的权限问题。此存储过程将返回一个结果集。
如果省略参数 INFO_TYPE,那么 SYSPROC.SYSTS_HC_AUTH() 会返回警告和错误消息(如果有的话)。
该存储过程检查以下常见问题:
- 用户对系统管理存储过程的
*EXECUTE权限 - 用户对 administrative catalog 的权限
- 用户的作业控制特殊权限(用于启动服务器)
- 其他所需权限
>>SYSTS_HC_USER_AUTH(------------)----------------->< -----INFO_TYPE--- |
此存储过程在 SYSPROC 中。
指定要返回的信息类型。参数的数据类型为 CHAR(1),有效值如下:
- 'I' – 仅返回 "Info" 消息
- 'W' – 仅返回 "Warning" 消息
- 'E' – 仅返回 "Error" 消息
- 'X' – 返回 "Warning" 和 "Error" 消息
- 'A' – 返回全部消息
存储过程将返回一个结果集。该结果集包含以下各列:
TYPE– CHAR(1),消息的类型,即 'I'、'W' 或 'E'。消息类型的含义:- 'I' – 信息消息,不属于警告或错误
- 'W' – 警告消息,不加以修复可能会导致问题
- 'E' – 错误消息,表示发现了错误。为了保证 OmniFind 能正常工作,就必须修复错误
CODE– INTEGER,消息的 Info、Warning 或 Error 代码。代码范围为:- 100-299:信息消息
- 300-499:警告消息
- 500-999:错误消息
ITEM– VARCHAR(128),所检查的特定项,比如 SYSPROC.SYSTS_START() 或 QSYS2.SYSTEXTSERVERS。MESSAGE– VARCHAR(512),具体的信息、警告或错误消息。
对用户进行权限检查,返回全部结果:
CALL SYSPROC.SYSTS_HC_USR_AUTH('A') |
示例输出如下:
TYPE
|
CODE
|
ITEM
|
MESSAGE
|
I
|
104
|
SYSTS_START()
|
EXECUTE permission on SYSTS_START() is granted.
|
I
|
104
|
SYSTS_START
|
EXECUTE permission on SYSTS_START is granted.
|
I
|
104
|
SYSTS_STOP()
|
EXECUTE permission on SYSTS_STOP() is granted.
|
I
|
104
|
SYSTS_STOP
|
EXECUTE permission on SYSTS_STOP is granted.
|
I
|
104
|
SYSTS_CREATE
|
EXECUTE permission on SYSTS_CREATE is granted.
|
I
|
104
|
SYSTS_UPDATE
|
EXECUTE permission on SYSTS_UPDATE is granted.
|
I
|
104
|
SYSTS_DROP
|
EXECUTE permission on SYSTS_DROP is granted.
|
I
|
104
|
SYSTS_ALTER
|
EXECUTE permission on SYSTS_ALTER is granted.
|
I
|
104
|
SYSTS_REMOVE
|
EXECUTE permission on SYSTS_REMOVE is granted.
|
I
|
202
|
SYSTEXTDEFAULTS
|
Authority list on table SYSTEXTDEFAULTS is (Read:true, Add:true, Update:true, Delete:true, Execute:true).
|
I
|
202
|
SYSTEXTSERVERS
|
Authority list on table SYSTEXTSERVERS is (Read:true, Add:true, Update:true, Delete:true, Execute:true).
|
I
|
202
|
SYSTEXTINDEXES
|
Authority list on table SYSTEXTINDEXES is (Read:true, Add:true, Update:true, Delete:true, Execute:true).
|
I
|
202
|
SYSTEXTCOLUMNS
|
Authority list on table SYSTEXTCOLUMNS is (Read:true, Add:true, Update:true, Delete:true, Execute:true).
|
I
|
202
|
SYSTEXTCONFIGURATION
|
Authority list on table SYSTEXTCONFIGURATION is (Read:true, Add:true, Update:true, Delete:true, Execute:true).
|
I
|
202
|
SYSTEXTSERVERHISTORY
|
Authority list on table SYSTEXTSERVERHISTORY is (Read:true, Add:true, Update:true, Delete:true, Execute:true).
|
I
|
205
|
*JOBCTL
|
"*JOBCTL" authority is granted.
|
返回适合发出调用的用户的权限的警告和错误检查结果:
CALL SYSPROC.SYSTS_HC_USR_AUTH() |
DB2 存储过程 SYSPROC.SYSTS_HC_GENERAL() 用于检查 OmniFind Text Search Server 的总体健康状况。它检查 OmniFind 的配置情况。
存储过程成功完成后,返回一个结果集。该结果集报告可能需要系统管理员处理的产品安装或配置上的问题。
该存储过程检查以下各项:
- 所需要点 LPP(ICU、Java、QSH 等)的安装情况
- 系统中以安装的 PTF
- OmniFind 系统管理存储过程
- OmniFind 独立辅助存储池 (iASP) 的 varyon 和 varyoff 程序的配置情况
- 系统管理 catalog
- • QSYS2.SYSTEXTDEFAULTS 表中的 OmniFind 默认值
>>SYSTS_HC_GENERAL(-------------- )--------------------->< ---INFO_TYPE----- ---INFO_TYPE, AUTO_FIX----- |
此存储过程在 SYSPROC SYSPROC 中。
INFO_TYPE
指定要返回的信息类型,参见 SYSTS_HC_AUTH() 中的 INFO_TYPE。
类型为 SMALLINT,仅供留作将来使用。目前,此值必须设置为 0。服务器不会自动修复发现的问题。
如果参数列表为空,则返回所有警告和错误消息。
存储过程将返回一个结果集。该结果集包含以下各列:
TYPE– CHAR(1),消息的类型,参见SYSTS_HC_AUTH()中的 TYEP。CODE– INTEGER,消息的 Info、Warning 或 Error 代码,,参见SYSTS_HC_AUTH()中的 CODE。ITEM– VARCHAR(128),所检查的特定项。例如:SYSPROC.SYSTS_START() 或 QSYS2.SYSTEXTSERVERS。MESSAGE– VARCHAR(512),具体的信息、警告或错误消息。
执行总体健康状况检查并返回所有消息:
CALL SYSPROC.SYSTS_HC_GENERAL('A', 0) |
示例输出如下:
TYPE
|
CODE
|
ITEM
|
MESSAGE
|
I
|
106
|
QShell
|
LPP QShell is installed.
|
I
|
106
|
IBM i Portable Application Solutions Environment (IBM i PASE
|
LPP IBM i Portable Application Solutions Environment (IBM i PASE) is installed.
|
I
|
106
|
International Components for Unicode
|
LPP International Components for Unicode is installed.
|
I
|
203
|
J2SE 5.0 32 bit, 5770JV1, Option 8
|
LPP J2SE 5.0 32 bit, 5770JV1, Option 8 not installed.
|
I
|
203
|
J2SE 5.0 64 bit, 5770JV1, Option 9
|
LPP J2SE 5.0 64 bit, 5770JV1, Option 9 not installed.
|
I
|
203
|
J2SE 6.0 32 bit, 5770JV1, Option 11
|
LPP J2SE 6.0 32 bit, 5770JV1, Option 11 not installed.
|
I
|
203
|
J2SE 6.0 64 bit, 5770JV1, Option 12
|
LPP J2SE 6.0 64 bit, 5770JV1, Option 12 not installed.
|
I
|
106
|
J2SE 5.0 32 bit, 5761JV1, Option 8
|
LPP J2SE 5.0 32 bit, 5761JV1, Option 8 is installed.
|
I
|
106
|
J2SE 5.0 64 bit, 5761JV1, Option 9
|
LPP J2SE 5.0 64 bit, 5761JV1, Option 9 is installed.
|
I
|
106
|
J2SE 6.0 32 bit, 5761JV1, Option 11
|
LPP J2SE 6.0 32 bit, 5761JV1, Option 11 is installed.
|
I
|
106
|
J2SE 6.0 64 bit, 5761JV1, Option 12
|
LPP J2SE 6.0 64 bit, 5761JV1, Option 12 is installed.
|
I
|
107
|
SYSTS_ALTER
|
Stored procedure SYSTS_ALTER exists.
|
I
|
107
|
SYSTS_CREATE
|
Stored procedure SYSTS_CREATE exists.
|
I
|
107
|
SYSTS_DROP
|
Stored procedure SYSTS_DROP exists.
|
I
|
107
|
SYSTS_REMOVE
|
Stored procedure SYSTS_REMOVE exists.
|
I
|
107
|
SYSTS_REPRIMEINDEX
|
Stored procedure SYSTS_REPRIMEINDEX exists.
|
I
|
107
|
SYSTS_START
|
Stored procedure SYSTS_START exists.
|
I
|
107
|
SYSTS_STOP
|
Stored procedure SYSTS_STOP exists.
|
I
|
107
|
SYSTS_UPDATE
|
Stored procedure SYSTS_UPDATE exists.
|
I
|
107
|
SYSTS_VALIDITYCHECK
|
Stored procedure SYSTS_VALIDITYCHECK exists.
|
I
|
204
|
SYSTS_START()
|
External PGM for stored procedure SYSTS_START() exists.
|
I
|
204
|
SYSTS_START
|
External PGM for stored procedure SYSTS_START exists.
|
I
|
204
|
SYSTS_STOP()
|
External PGM for stored procedure SYSTS_STOP() exists.
|
I
|
204
|
SYSTS_STOP
|
External PGM for stored procedure SYSTS_STOP exists.
|
I
|
204
|
SYSTS_CREATE
|
External PGM for stored procedure SYSTS_CREATE exists.
|
I
|
204
|
SYSTS_UPDATE
|
External PGM for stored procedure SYSTS_UPDATE exists.
|
I
|
204
|
SYSTS_DROP
|
External PGM for stored procedure SYSTS_DROP exists.
|
I
|
204
|
SYSTS_ALTER
|
External PGM for stored procedure SYSTS_ALTER exists.
|
I
|
204
|
SYSTS_REMOVE
|
External PGM for stored procedure SYSTS_REMOVE exists.
|
E
|
554
|
QDBTS_LISTINXSTS
|
User defined function QDBTS_LISTINXSTS is not installed.
|
I
|
109
|
QDBTSVRYON
|
Vary Program QDBTSVRYON registered.
|
I
|
109
|
QDBTSVRYOF
|
Vary Program QDBTSVRYOF registered.
|
I
|
110
|
CCSID
|
OmniFind System default value CCSID:Value = 1208, Type = 1.
|
I
|
111
|
CCSID
|
OmniFind system default value CCSID exists.
|
I
|
110
|
LANGUAGE
|
OmniFind System default value LANGUAGE:Value = en_US, Type = 1.
|
I
|
111
|
LANGUAGE
|
OmniFind system default value LANGUAGE exists.
|
I
|
110
|
FORMAT
|
OmniFind System default value FORMAT:Value = TEXT, Type = 1.
|
I
|
111
|
FORMAT
|
OmniFind system default value FORMAT exists.
|
I
|
110
|
UPDATEFREQUENCY
|
OmniFind System default value UPDATEFREQUENCY:Value = NONE, Type = 1.
|
I
|
111
|
UPDATEFREQUENCY
|
OmniFind system default value UPDATEFREQUENCY exists.
|
I
|
110
|
UPDATEMINIMUM
|
OmniFind System default value UPDATEMINIMUM:Value = 1, Type = 1.
|
I
|
111
|
UPDATEMINIMUM
|
OmniFind system default value UPDATEMINIMUM exists.
|
I
|
110
|
MINIMUMUPDATEINTERVAL
|
OmniFind System default value MINIMUMUPDATEINTERVAL:Value = 5, Type = 0.
|
I
|
111
|
MINIMUMUPDATEINTERVAL
|
OmniFind system default value MINIMUMUPDATEINTERVAL exists.
|
I
|
110
|
USEREXITTHREADS
|
OmniFind System default value USEREXITTHREADS:Value = 0, Type = 1.
|
I
|
111
|
USEREXITTHREADS
|
OmniFind system default value USEREXITTHREADS exists.
|
I
|
110
|
IGNOREEMPTYDOCS
|
OmniFind System default value IGNOREEMPTYDOCS:Value = 1, Type = 1.
|
I
|
111
|
IGNOREEMPTYDOCS
|
OmniFind system default value IGNOREEMPTYDOCS exists.
|
I
|
110
|
UPDATEAUTOCOMMIT
|
OmniFind System default value UPDATEAUTOCOMMIT:Value = 100, Type = 1.
|
I
|
111
|
UPDATEAUTOCOMMIT
|
OmniFind system default value UPDATEAUTOCOMMIT exists.
|
I
|
110
|
CJKSEGMENTATION
|
OmniFind System default value CJKSEGMENTATION:Value = NGRAM, Type = 1
|
I
|
111
|
CJKSEGMENTATION
|
OmniFind system default value CJKSEGMENTATION exists.
|
I
|
113
|
SYSTEXTDEFAULTSU1
|
Constraint SYSTEXTDEFAULTSU1 is ok
|
I
|
112
|
SYSTEXTDEFAULTS
|
Table SYSTEXTDEFAULTS is journaled.
|
I
|
113
|
SYSTEXTSERVERSP
|
Constraint SYSTEXTSERVERSP is ok
|
I
|
113
|
SYSTEXTSERVERSU1
|
Constraint SYSTEXTSERVERSU1 is ok
|
I
|
113
|
SYSTEXTSERVERAL
|
Constraint SYSTEXTSERVERAL is ok
|
I
|
112
|
SYSTEXTSERVERS
|
Table SYSTEXTSERVERS is journaled.
|
I
|
113
|
SYSTEXTINDEXESP
|
Constraint SYSTEXTINDEXESP is ok
|
I
|
113
|
SYSTEXTINDEXESU1
|
Constraint SYSTEXTINDEXESU1 is ok
|
I
|
113
|
SYSTEXTINDEXEF1
|
Constraint SYSTEXTINDEXEF1 is ok
|
I
|
113
|
SYSTEXTINDEXEF2
|
Constraint SYSTEXTINDEXEF2 is ok
|
I
|
112
|
SYSTEXTINDEXES
|
Table:SYSTEXTINDEXES is journaled.
|
I
|
113
|
SYSTEXTCOLUMNSP
|
Constraint SYSTEXTCOLUMNSP is ok
|
I
|
113
|
SYSTEXTCOLUMNSF1
|
Constraint SYSTEXTCOLUMNSF1 is ok
|
I
|
112
|
SYSTEXTCOLUMNS
|
Table:SYSTEXTCOLUMNS is journaled.
|
I
|
113
|
SYSTEXTCONFIGURATION
|
Constraint SYSTEXTCONFIGURATION is ok
|
I
|
113
|
SYSTEXTCONFIGURATIONF0
|
Constraint SYSTEXTCONFIGURATIONF0 is ok
|
I
|
112
|
SYSTEXTCONFIGURATION
|
Table:SYSTEXTCONFIGURATION is journaled.
|
I
|
113
|
SYSTEXTSERVERHISTORYU1
|
Constraint SYSTEXTSERVERHISTORYU1 is ok
|
I
|
112
|
SYSTEXTSERVERHISTORY
|
Table:SYSTEXTSERVERHISTORY is journaled.
|
返回全部警告和错误消息:
CALL SYSPROC.SYSTS_HC_GENERAL() |
DB2 存储过程 SYSPROC.SYSTS_HC_IDX() 用于根据给定的参数在当前独立辅助存储池 (iASP) 组中,检查单个或是全部索引根据给定的不同参数确定的。如果给出了限定索引名,则健康状况检查报告仅针对特定索引;否则将检查 IASP 组中的全部文本索引。存储过程成功完成后将返回一个结果集。存储过程 SYSPROC.SYSTS_HC_IDX_SN() 执行相同的功能,但接受 schema 名和索引名作为参数。
此过程检查的各项的列表如下:
- 索引的 base table 是否存在
- Catalog
SYSTEXTINDEXES、SYSTEXTCOLUMNS和SYSTEXTCONFIGURATION分类中的索引、列和配置项是否正确无误 SYSTEXTSERVERHISTORY中的记录是否有效- 如果索引是建立在在本地服务器中的,检查索引的 collection 目录是否存在
- 索引的视图是否存在
- 本索引的服务器是否处于活动状态
- 更新调度程序是否配置正确
- 索引的 base table 中是否存在插入、更新和删除触发器
- 索引的 staging table 是否存在
- 触发器、staging table、索引视图的所有者是否一致
- 索引所有者在 base table 和 administrative cataglog 上的权限是否正确
- 索引所有者是否有修改自动更新所需的作业调度器条目的权限
- 索引所有者是否具有
*JOBCTL特殊权限。
>>-SYSTS_HC_IDX(-------------- )------------------------>< ---INDEXSCHEMA, INDEXNAME, INFO_TYPE, AUTO_FIX ---INDEXSCHEMA, INDEXNAME, INFO_TYPE ---INFO_TYPE, AUTO_FIX ---INFO_TYPE >>SYSTS_HC_IDX_SN(INDEXSCHEMA,INDEXNAME)--------------->< |
此存储过程在 SYSPROC 中。
INFO_TYPE
指定要返回的信息类型。参见 SYSTS_HC_AUTH() 中的INFO_TYPE。
AUTO_FIX
仅供留作将来使用。参见 SYSTS_HC_GENERAL() 中的 AUTOFIX。
INDEXSCHEMA
指定要检查的索引的 schema。参数类型为 VARCHAR(128),CCSID 为 1208。输入值必须是有效的 SQL 名称。INDEXSCHEMA 参数是区分大小写的,不能自动转为大写字母。
INDEXNAME
指定要检查的索引名。参数类型为 VARCHAR(128), CCSID 为 1208。输入值必须是有效的 SQL 名称。索引名是区分大小写的,不能自动转为大写字母。
如果参数列表为空,则对所有现有索引执行健康状况检查,但不会执行自动修复;执行结束返回警告和错误消息。
存储过程将返回一个结果集。该结果集包含以下各列:
- ID – INTEGER,索引 ID。
- TYPE – CHAR(1),消息的类型,参见
SYSTS_HC_AUTH()中的TYPE。 - CODE – INTEGER,信息 Info、Warning 或 Error 代码,,参见
SYSTS_HC_AUTH()中的 CODE。 - ITEM – VARCHAR(128),所检查的特定项,例如 staging table、索引视图。
- MESSAGE – VARCHAR(512),具体的信息、警告或错误消息。
检查索引 TESTSCHEMA.TESTINDEX,返回所有消息,不做任何自动修复:
CALL SYSPROC.SYSTS_HC_IDX('TESTSCHEMA', 'TESTINDEX', 'A', 0) |
示例输出如下:
ID
|
TYPE
|
CODE
|
ITEM
|
MESSAGE
|
10,608
|
I
|
128
|
-
|
The column entry for the index exists.
|
10,608
|
I
|
129
|
-
|
The config entry for the index exists.
|
10,608
|
I
|
130
|
-
|
The history entry for the index exists.
|
10,608
|
I
|
131
|
-
|
The base table of the index exists.
|
10,608
|
I
|
206
|
-
|
Unique or primary key constraint exists in the based table.
|
10,608
|
I
|
121
|
-
|
Server is active.
|
10,608
|
I
|
117
|
-
|
Server path is valid.
|
10,608
|
W
|
316
|
-
|
Automatic update for the index is not started.
|
10,608
|
I
|
123
|
INSERT
|
The INSERT trigger exists.
|
10,608
|
I
|
124
|
INSERT
|
The INSERT trigger is enabled.
|
10,608
|
I
|
123
|
UPDATE
|
The UPDATE trigger exists.
|
10,608
|
I
|
124
|
UPDATE
|
The UPDATE trigger is enabled.
|
10,608
|
I
|
123
|
DELETE
|
The DELETE trigger exists.
|
10,608
|
I
|
124
|
DELETE
|
The DELETE trigger is enabled.
|
10,608
|
I
|
132
|
-
|
The staging table of the index exists
|
10,608
|
I
|
112
|
staging table
|
Table:staging table is journaled.
|
10,608
|
I
|
133
|
-
|
The view for the index exists.
|
10,608
|
I
|
126
|
-
|
The owners are consistent.
|
10,608
|
I
|
126
|
-
|
The owners are consistent.
|
10,608
|
I
|
126
|
-
|
The owners are consistent.
|
10,608
|
I
|
127
|
Job Scheduler
|
The user has the permission on Job Scheduler Entry.
|
10,608
|
I
|
127
|
the base table
|
The user has the permission on the base table.
|
10,608
|
I
|
127
|
SYSTEXTDEFAULTS
|
The user has the permission on SYSTEXTDEFAULTS.
|
10,608
|
I
|
127
|
SYSTEXTSERVERS
|
The user has the permission on SYSTEXTSERVERS.
|
10,608
|
I
|
127
|
SYSTEXTINDEXES
|
The user has the permission on SYSTEXTINDEXES.
|
10,608
|
I
|
127
|
SYSTEXTCOLUMNS
|
The user has the permission on SYSTEXTCOLUMNS.
|
10,608
|
I
|
127
|
SYSTEXTCONFIGURATION
|
The user has the permission on SYSTEXTCONFIGURATION.
|
10,608
|
I
|
127
|
SYSTEXTSERVERHISTORY
|
The user has the permission on SYSTEXTSERVERHISTORY.
|
10,608
|
I
|
205
|
*JOBCTL
|
"*OBJCTL" authority is granted.
|
检查索引 TESTSCHEMA.TESTINDEX,并且仅返回错误消息:
CALL SYSPROC.SYSTS_HC_IDX('TESTSCHEMA', 'TESTINDEX', 'E') |
检查全部索引并返回警告和错误消息:
CALL SYSPROC.SYSTS_HC_IDX() |
DB2 存储过程 SYSTS_HC_SVR() 用于检查一个或全部本地文本服务器的健康状况。如果指定了一个服务器 ID,那么这个存储过程将仅检查该文本服务器,否则就检查在当前独立辅助存储池 (IASP) 配置的所有服务器。存储过程将返回一个结果集。过程 SYSPROC.SYSTS_HC_SVR_T() 和 SYSPROC.SYSTS_HC_SVR_IT() 执行相同的功能,但输入参数不同,分别用于指定被检查的服务器和返回的信息类型。
该存储过程会检查文本服务器的以下各项:
- 鉴权代码是否有效
- IP 地址是否有效
- 服务器路径是否有效
- 服务器端口是否有效
对于每一个活动的本地服务器,会执行一些额外的检查来确定它所需的服务器作业是否在运行,服务器端口端口是否可以连接。
>>SYSTS_HC_SVR(---------------)----------------------->< ----SERVERID, INFO_TYPE, AUTO_FIX ---- ----SERVERID---- ----INFO_TYPE, AUTO_FIX---- >>SYSTS_HC_SVR_IT(SERVERID,INFO_TYPE)-------------------->< >>SYSTS_HC_SVR_T(INFO_TYPE)---------------------------->< |
此存储过程在 SYSPROC 中。
SERVERID
指定要检查的文本服务器标识符。特定服务器的服务器标识符可使用 IBM Systems Director Navigator for i 获得。利用 Director Navigator 即可获得服务器信息和状态,参见 InfoCenter。
也可使用以下 SQL 查询从系统 catalog 中获取这些信息:
SELECT SERVERID, SERVERNAME, SERVERPATH, ALIASNAME FROM QSYS2.SYSTEXTSERVERS; |
指定要返回的信息类型,参见 SYSTS_HC_AUTH() 中的 INFO_TYPE。
AUTO_FIX
仅供留作将来使用,参见 SYSTS_HC_GENERAL() 中的 AUTO_FIX。
存储过程成功完成后将返回一个结果集。该结果集包含以下各列:
- ID – INTEGER,服务器 ID。
- TYPE – CHAR(1),消息的类型,参见
SYSTS_HC_AUTH()中的TYPE。 - CODE – INTEGER,消息的信息、警告或错误代码,参见
SYSTS_HC_AUTH()中的 CODE。 - ITEM – VARCHAR(128),所检查的特定项,通常在服务器检查中不会使用,因为
MESSAGE提供了非常明确的信息。 - MESSAGE – VARCHAR(512),具体的信息、警告或错误消息。
检查 id 为 50 的服务器并返回所有消息:
CALL SYSPROC.SYSTS_HC_SRV(50, 'A', 0) |
示例输出如下:
ID
|
TYPE
|
CODE
|
ITEM
|
MESSAGE
|
50
|
I
|
117
|
-
|
Server path is valid.
|
50
|
I
|
116
|
-
|
Server token is valid.
|
50
|
I
|
118
|
-
|
Server name is valid.
|
50
|
I
|
119
|
-
|
Server port is valid.
|
50
|
I
|
114
|
-
|
Server jobs are ok.
|
50
|
I
|
115
|
-
|
Stellent jobs are ok.
|
50
|
I
|
120
|
-
|
Server is connectable.
|
检查 id 为 50 的服务器并返回警告和错误消息。
CALL SYSPROC.SYSTS_HC_SRV(50) |
OmniFind 健康状况检查器提供了一组 DB2 存储过程,用户可以调用这些存储过程来检查总体配置、文本服务器和索引。如果 OmniFind Text Search Server for i 存在任何问题,这些存储过程可用于返回警告和 / 或错误消息,随后可以利用这些信息来迅速了解问题的起因,并采取修复措施。
- DB2 for i 的 OmniFind Text Search Server
- OmniFind 白皮书
- OmniFind for IBM i
- DB2 for i 论坛
- IBM developerWorks 中国 IBM i 专区:为 IBM i 的开发人员准备的技术信息和资料。这里提供产品下载、how-to 信息、支持资源以及免费技术库,包含 2000 多份技术文章、教程、最佳实践、IBM Redbook 和在线产品手册。
- 加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。
- 加入 IBM i 中国开发团队 Blog,参与在线交流。

