Sun Java 徽标     上一页      目录      索引      下一页     

Sun 徽标
Sun Java System Message Queue 3 2005Q4 管理指南 

第 13 章
命令行参考

本章提供了有关使用 Message Queue 命令行管理实用程序的参考信息。本章包含以下各节:


命令行语法

Message Queue 命令行实用程序是 shell 命令。实用程序的名称是命令,其子命令或选项是传递给该命令的参数。不需要使用单独的命令来启动或退出实用程序。

以下命令语法适用于所有命令行实用程序:

utilityName [subcommand] [commandArgument] [[-optionName [-optionArgument]]...]

其中 utilityName 是以下实用程序之一:

子命令和命令级别的参数(如果有)必须放在所有选项及其参数之前;而选项自身可以按任何顺序显示。所有子命令、命令参数、选项和选项参数都是以空格分隔的。如果选项参数的值包含空格,则必须将整个值置于引号中。(将所有属性-值对置于引号中通常是最安全的做法。)

以下命令用于启动默认代理,它是不带子命令子句的命令行的示例:

imqbrokerd

下面是更完整的示例:

imqcmd destroy dst -t q -n myQueue -u admin -f -s

此命令销毁名为 myQueue 的队列目标(目标类型为 q)。验证是针对用户名 admin 执行的;此命令将提示用户输入密码。执行此命令时不提示用户进行确认(-f 选项),并且处于无提示模式,而不显示任何输出(-s 选项)。


代理实用程序

代理实用程序 (imqbrokerd) 用于启动代理。命令行选项将覆盖代理配置文件中的值,但仅对当前代理会话有效。

表 13-1 显示了 imqbrokerd 命令的选项以及被每个选项覆盖的配置属性(如果有)。

表 13-1 代理实用程序选项 

选项

被覆盖的属性

描述

-name instanceName

imq.instancename

代理的实例名称

在同一主机上运行的多个代理实例必须具有不同的实例名称。

默认值:imqbroker

-port portNumber

imq.portmapper.port

代理端口映射器的端口号

Message Queue 客户端使用此端口号连接到代理。在同一主机上运行的多个代理实例必须具有不同的端口映射器端口号。

默认值: 7676

-cluster broker1 [ [,broker2 ]... ]

imq.cluster.brokerlist

将代理连接到群集1

将指定的代理与 imq.cluster.brokerlist 属性中的列表合并。每个代理参数具有以下形式之一:

hostName:portNumber
hostName
:portNumber

如果省略 hostName,则默认值为 localhost;如果省略 portNumber,则默认值为 7676

-Dproperty=value

实例配置文件中对应的属性

设置配置属性

有关代理配置属性的信息,请参见第 14 章“代理属性参考”

注意:请仔细检查使用此选项设置的属性的拼写和格式。不正确的值将被忽略,且系统不会给出任何通知或警告。

-reset props

重置配置属性

用空文件替换代理的现有实例配置文件 (config.properties);所有属性都采用默认值。

-reset store

重置持久性数据存储

从数据存储中清除所有持久性数据(包括持久性消息、长期订阅和事务信息),以便您可以启动一个无任何数据记录的代理实例。为了防止在以后重新启动时重置持久性存储,请不要使用 -reset 选项重新启动代理实例。

如果仅清除持久性消息或长期订阅,请改用 -reset messages 或 -reset durables。

-reset messages

从数据存储中清除持久性消息

-reset durables

从数据存储中清除长期订阅

-backup fileName

将配置更改记录备份到文件中1

有关更多信息,请参见管理配置更改记录

-restore fileName

从备份文件中恢复配置更改记录1

该备份文件必须是以前使用 -backup 选项创建的。

有关更多信息,请参见管理配置更改记录

-remove instance

删除代理实例2

删除与实例关联的实例配置文件、日志文件、持久性存储以及其他文件和目录。

-password keyPassword

imq.keystore.password

SSL 证书密钥库的密码3

-dbuser userName

imq.persist.jdbc.user

基于 JDBC 的持久性数据存储的用户名

-dbpassword dbPassword

imq.persist.jdbc.password

基于 JDBC 的持久性数据存储的密码3

-ldappassword ldapPassword

imq.user_repository.ldap.password

LDAP 用户系统信息库的密码3

-passfile filePath

imq.passfile.enabled
imq.passfile.dirpath
imq.passfile.name

密码文件的位置

将代理的 imq.passfile.enabled 属性设置为 true,将 imq.passfile.dirpath 属性设置为包含密码文件的路径,将 imq.passfile.name 属性设置为文件名自身。

有关更多信息,请参见使用密码文件

-shared

imq.jms.threadpool_model

使用共享线程池模型实现 jms 连接服务

将在连接之间共享执行线程,以增加支持的连接数。

将代理的 imq.jms.threadpool_model 属性设置为 shared

-javahome path

可选 Java 运行时的位置

默认值:使用系统上安装的运行时或 Message Queue 附带的运行时。

-vmargs arg1 [ [ arg2 ] ... ]

将参数传递给 Java 虚拟机

参数是以空格分隔的。要传递多个参数或包含空格的参数,请将参数列表置于引号中。

只能从命令行中传递 VM 参数;在实例配置文件中没有关联的配置属性。

-license [ licenseName ]

要装入的许可证(如果与所安装的 Message Queue 产品版本的默认许可证不同):

  pe   具有基本功能的
        Platform Edition

  try  具有企业功能的
       Platform Edition(90 天试用版)

  unl  Enterprise Edition

如果未指定许可证名称,此选项将列出系统上安装的所有许可证。

-upgrade-store-nobackup

从不兼容版本升级到 Message Queue 3.5 或 3.5 SPx 时自动删除旧的数据存储2

有关更多信息,请参见 Message Queue Installation Guide。

-force

执行操作时无需用户确认

此选项仅适用于 -remove instance-upgrade-store-nobackup 选项,这两个选项通常要求确认。

-loglevel level

imq.broker.log.level

日志记录级别:

  NONE
  ERROR
  WARNING
  INFO

默认值:INFO

-metrics interval

imq.metrics.interval

代理度量的日志记录时间间隔(以秒为单位)

-tty

imq.log.console.output

将所有消息记录到控制台

将代理的 imq.log.console.output 属性设置为 ALL

如果未指定,将只记录错误和警告消息。

-s | -silent

imq.log.console.output

无提示模式(不向控制台记录消息)

将代理的 imq.log.console.output 属性设置为 NONE

-version

显示版本信息4

-h | -help

显示使用帮助4

1此选项仅适用于代理群集。

2除非还指定了 -force,否则此选项将要求用户进行确认。

3不建议使用此选项,它最终将被删除。应完全省略密码(这样,命令将以交互方式提示用户输入密码)或使用 -passfile 选项来指定包含密码的密码文件。

4忽略命令行中指定的任何其他选项。


命令实用程序

命令实用程序 (imqcmd) 用于管理代理、连接服务、连接、物理目标、长期订阅和事务。

所有 imqcmd 命令都必须包含一个子命令(使用 -v-h 选项显示产品版本信息或使用帮助的命令除外)。下面列出了一些可用的子命令,并在后面的相应章节中进行了详细介绍。在任何情况下,如果子命令接受代理地址(-b 选项),并且未指定主机名或端口号,则默认情况下都将采用值 localhost7676

代理管理

shutdown bkr

关闭代理

restart bkr

重新启动代理

pause bkr

暂停代理

resume bkr

恢复代理

update bkr

设置代理属性

reload cls

重新装入群集配置

query bkr

列出代理属性值

metrics bkr

显示代理度量

连接服务管理

pause svc

暂停连接服务

resume svc

恢复连接服务

update svc

设置连接服务属性

list svc

列出代理中可用的连接服务

query svc

列出连接服务属性值

metrics svc

显示连接服务度量

连接管理

list cxn

列出代理中的连接

query cxn

显示连接信息

物理目标管理

create dst

创建物理目标

destroy dst

销毁物理目标

pause dst

暂停物理目标的消息传送

resume dst

恢复物理目标的消息传送

update dst

设置物理目标属性

purge dst

清除来自物理目标的所有消息

compact dst

压缩物理目标

list dst

列出物理目标

query dst

列出物理目标属性值

metrics dst

显示物理目标度量

长期订阅管理

destroy dur

销毁长期订阅

purge dur

清除来自长期订阅的所有消息

list dur

列出主题的长期订阅

事务管理

commit txn

提交事务

rollback txn

回滚事务

list txn

列出代理正在跟踪的事务

query txn

显示事务信息

代理管理

无法使用命令实用程序启动代理,而应使用代理实用程序 (imqbrokerd)。代理启动后,您可以使用表 13-2 中列出的 imqcmd 子命令来管理和控制代理。

表 13-2 用于代理管理的命令实用程序子命令 

语法

描述

shutdown bkr [-b hostName:portNumber]

关闭代理

restart bkr [-b hostName:portNumber]

重新启动代理

关闭代理,再使用最初启动代理时指定的选项重新启动代理。

pause bkr [-b hostName:portNumber]

暂停代理

有关更多信息,请参见暂停代理

resume bkr [-b hostName:portNumber]

恢复代理

update bkr [-b hostName:portNumber]
   -o property1=value1
   [ [-o property2=value2] ... ]

设置代理属性

有关代理属性的信息,请参见第 14 章“代理属性参考”

reload cls

重新装入群集配置1

将所有持久性信息强制更新为最新状态。

query bkr -b hostName:portNumber

列出代理属性值

还列出连接到群集中指定代理的所有正在运行的代理。

metrics bkr [-b hostName:portNumber]
   [-m metricType]
   [-int interval]
   [-msp numSamples]

显示代理度量

-m 选项指定要显示的度量的类型:

  ttl  流入和流出
       代理的消息和包

  rts  消息和包流入
       流出代理的速率(以一秒为衡量单位)

  cxn  连接、虚拟内存堆和
       线程

默认值:ttl

-int 选项指定显示度量的时间间隔(以秒为单位)。默认值:5

-msp 选项指定要显示的样例的数量。默认值:无限制(无穷多)。

1此选项仅适用于代理群集。

连接服务管理

表 13-3 列出了用于管理连接服务的 imqcmd 子命令。

表 13-3 用于连接服务管理的命令实用程序子命令 

语法

描述

pause svc -n serviceName
   [-b hostName:portNumber]

暂停连接服务

无法暂停 admin 连接服务。

resume svc -n serviceName
   [-b hostName:portNumber]

恢复连接服务

update svc -n serviceName
   [-b hostName:portNumber]
   -o property1=value1
   [ [-o property2=value2] ... ]

设置连接服务属性

有关连接服务属性的信息,请参见连接属性

list svc [-b hostName:portNumber]

列出代理中可用的连接服务

query svc -n serviceName
   [-b hostName:portNumber]

列出连接服务属性值

metrics svc -n serviceName
   [-b hostName:portNumber]
   [-m metricType]
   [-int interval]
   [-msp numSamples]

显示连接服务度量

-m 选项指定要显示的度量的类型:

  ttl  通过指定的连接服务
       流入和流出代理
       的消息和包

  rts  消息和包通过指定的连接服务
       流入流出代理
       的速率(以一秒为衡量单位)

  cxn  连接、虚拟内存堆和
       线程

默认值:ttl

-int 选项指定显示度量的时间间隔(以秒为单位)。默认值:5

-msp 选项指定要显示的样例的数量。默认值:无限制(无穷多)。

连接管理

表 13-4 列出了用于管理连接的 imqcmd 子命令。

表 13-4 用于连接服务管理的命令实用程序子命令 

语法

描述

list cxn [-svn serviceName]
   [-b hostName:portNumber]

列出代理中的连接

列出代理到指定连接服务的所有连接。如果未指定连接服务,则列出所有连接。

query cxn -n connectionID
   [-b hostName:portNumber]

显示连接信息

物理目标管理

表 13-5 列出了用于管理物理目标的 imqcmd 子命令。在任何情况下,-t(目标类型)选项都可以采用以下两个值之一:

长期订阅管理

表 13-6 列出了用于管理长期订阅的 imqcmd 子命令。

表 13-6 用于长期订阅管理的命令实用程序子命令 

语法

描述

destroy dur -c clientID
   -n subscriberName

销毁长期订阅1

purge dur -c clientID
   -n subscriberName

清除来自长期订阅的所有消息

list dur -d topicName

列出主题的长期订阅

1不能在主代理暂时不可用的代理群集中执行此操作。

事务管理

表 13-7 列出了用于管理事务的 imqcmd 子命令。

表 13-7 用于事务管理的命令实用程序子命令 

语法

描述

commit txn -n transactionID

提交事务

rollback txn -n transactionID

回滚事务

list txn

列出代理正在跟踪的事务

query txn -n transactionID

显示事务信息

常规命令实用程序选项

表 13-8 中列出的附加选项适用于 imqcmd 命令的所有子命令。

表 13-8 常规命令实用程序选项 

选项

描述

-secure

通过 ssladmin 连接服务使用安全的代理连接

-u userName

用于验证的用户名

如果省略此选项,命令实用程序将以交互方式提示用户输入用户名。

-p password

用于验证的密码1

-passfile path

密码文件的位置

有关更多信息,请参见使用密码文件

-rtm timeoutInterval

初始超时时间间隔(以秒为单位)

初始超时时间间隔是命令实用程序最初等待代理回复的时间长度,超过此时间后,将重试请求。随后的每次重试都将使用此初始时间间隔的倍数作为超时时间间隔。

默认值:-10

-rtr numRetries

代理请求超时后尝试重试的次数

默认值:5

-javahome path

可选 Java 运行时的位置

默认值:使用系统上安装的运行时或 Message Queue 附带的运行时。

-f

执行操作时无需用户确认

-s

无提示模式(不显示输出)

-v

显示版本信息2,3

-h

显示使用帮助2,3

-H

显示详细的使用帮助,包括属性列表和示例2,3

1不建议使用此选项,它最终将被删除。应完全省略密码(这样,命令将以交互方式提示用户输入密码)或使用 -passfile 选项来指定包含密码的密码文件。

2忽略命令行中指定的其他任何选项。

3此选项不需要用户名和密码。


对象管理器实用程序

对象管理器实用程序 (imqobjmgr) 用于创建和管理 Message Queue 受管理对象。表 13-9 列出了可用的子命令。

表 13-9 对象管理器子命令 

子命令

描述

add

向对象存储中添加受管理对象

delete

从对象存储中删除受管理对象

list

列出对象存储中的受管理对象

query

显示受管理对象的信息

update

修改受管理对象

表 13-10 列出了 imqobjmgr 命令的选项。

表 13-10 对象管理器选项 

选项

描述

-l lookupName

受管理对象的 JNDI 查找名称

-j attribute=value

JNDI 对象存储的属性(请参见对象存储

-t objectType

受管理对象的类型:

  q    队列目标

  t    主题目标

  cf   连接工厂

  qf   队列连接工厂

  tf   主题连接工厂

  xcf  分布式事务的连接工厂

  xqf  分布式事务的队列连接工厂

  xtf  分布式事务的主题连接工厂

  e    SOAP 端点(请参见 Message Queue Developer's Guide for JavaClients )

-o attribute=value

受管理对象的属性(请参见受管理对象的属性第 16 章“受管理对象属性参考”

-r readOnlyState

受管理对象是否为只读?

如果为 true,客户端将无法修改对象的属性。默认值:false

-i fileName

包含所有或部分子命令子句的命令文件的名称

-pre

预览结果但不执行命令

此选项对于检查默认属性值很有用。

-javahome path

可选 Java 运行时的位置

默认值:使用系统上安装的运行时或 Message Queue 附带的运行时。

-f

执行操作时无需用户确认

-s

无提示模式(不显示输出)

-v

显示版本信息1

-h

显示使用帮助1

-H

显示详细的使用帮助,包括属性列表和示例1

1忽略命令行中指定的任何其他选项。


数据库管理器实用程序

数据库管理器实用程序 (imqdbmgr) 为基于 JDBC 的持久性数据存储建立数据库结构。您还可以使用它删除已损坏的 Message Queue 数据库表或更改数据存储。表 13-11 列出了可用的子命令。

表 13-11 数据库管理器子命令 

子命令

描述

create all

创建新的数据库和持久性存储结构

用于嵌入式数据库系统。必须指定代理属性 imq.persist.jdbc.createdburl

create tbl

为现有数据库创建持久性存储结构

用于外部数据库系统。

delete tbl

从当前持久性存储中删除 Message Queue 数据库表

delete oldtbl

从较早版本的持久性存储中删除 Message Queue 数据库表

在持久性存储自动迁移到 Message Queue 当前版本后使用。

recreate tbl

重新创建持久性存储结构

从当前的持久性存储中删除所有现有的 Message Queue 数据库表,然后重新创建结构。

reset lck

重置持久性存储锁

对锁进行重置,以便其他进程可以使用该持久性存储数据库。

表 13-12 列出了 imqdbmgr 命令的选项。

表 13-12 数据库管理器选项

选项

描述

-b instanceName

代理的实例名称

-Dproperty=value

设置代理配置属性

有关与持久性相关的代理配置属性的信息,请参见持久性属性

注意:请仔细检查使用此选项设置的属性的拼写和格式。不正确的值将被忽略,且系统不会给出任何通知或警告。

-u name

用于验证的用户名

-p password

用于验证的密码1

-passfile path

密码文件的位置

有关更多信息,请参见使用密码文件

-v

显示版本信息2

-h

显示使用帮助2

1不建议使用此选项,它最终将被删除。应完全省略密码(这样,命令将以交互方式提示用户输入密码)或使用 -passfile 选项来指定包含密码的密码文件。

2忽略命令行中指定的其他任何选项。


用户管理器实用程序

用户管理器实用程序 (imqusermgr) 用于填充或编辑平面文件用户系统信息库。该实用程序必须在安装代理的主机上运行;如果尚不存在特定于代理的用户系统信息库,您必须首先启动相应的代理实例来创建它。此外,您还必须具有写入系统信息库的适当权限:在 Solaris 或 Linux 平台上,这意味着您必须是 root 用户或最初创建代理实例的用户。

表 13-13 列出了可以与 imqusermgr 命令一起使用的子命令。在任何情况下,-i 选项都指定代理的实例名称,该代理的用户系统信息将应用此命令;如果未指定,将采用默认名称 imqbroker

表 13-13 用户管理器子命令 

语法

描述

add [-i instanceName]
   -u userName -p password
   [-g group]

向系统信息库中添加用户和密码

-g 选项可选,它指定要将此用户指定到的组:

  admin
  user
  anonymous

delete [-i instanceName]
   -u userName

从系统信息库中删除用户

update [-i instanceName]
   -u userName -p password
   [-a activeState]

update [-i instanceName]
   -u userName -a activeState
   [-p password]

设置用户的密码和/或活动状态

-a 选项采用布尔值,它指定使用户处于活动状态 (true) 还是非活动状态 (false)。默认值:true

list [-i instanceName]
   [-u userName]

显示用户信息。

如果未指定用户名,则列出系统信息库中的所有用户。

此外,表 13-14 中列出的选项适用于 imqusermgr 命令的所有子命令。

表 13-14 常规用户管理器选项 

选项

描述

-f

执行操作时无需用户执行操作,也无需用户确认。

-s

无提示模式(不显示输出)

-v

显示版本信息1

-h

显示使用帮助1

1忽略命令行中指定的其他任何选项。


服务管理器实用程序

服务管理器实用程序 (imqsvcadmin) 将代理作为 Windows 服务安装。表 13-15 列出了可用的子命令。

表 13-15 服务管理器子命令 

子命令

描述

install

安装服务

remove

删除服务

query

显示启动选项

启动选项可以包括服务的启动方式(手动还是自动)、服务的位置、Java 运行时的位置以及启动时传递给代理的参数值。

表 13-16 列出了 imqsvcadmin 命令的选项。

表 13-16 服务管理器选项 

选项

描述

-javahome path

可选 Java 运行时的位置

默认值:使用系统上安装的运行时或 Message Queue 附带的运行时。

-jrehome path

可选 Java 运行环境 (Java Runtime Environment, JRE) 的位置

-vmargs arg1 [ [arg2] ... ]

要传递给运行代理服务的 Java 虚拟机的其他参数1

示例:

  imqsvcadmin install -vmargs "-Xms16m -Xmx128m"

-args arg1 [ [arg2] ... ]

要传递给代理服务的其他命令行参数1

示例:

  imqsvcadmin install -args "-passfile d:\imqpassfile"

有关代理命令行参数的信息,请参见代理实用程序

-h

显示使用帮助2

1还可以在服务“属性”窗口(可以通过 Windows“管理工具”控制面板中的“服务”工具访问此窗口)“常规”选项卡下的“启动参数”字段中指定这些参数。

2忽略命令行中指定的任何其他选项。

使用 -javahome-vmargs-args 选项指定的所有信息都存储在 Window 注册表项 JavaHomeJVMArgsServiceArgs 下,这些注册表项的路径为:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iMQ_Broker\Paramet ers


密钥工具实用程序

密钥工具实用程序 (imqkeytool) 为代理生成自签名证书,该证书可用于 ssljmsssladmincluster 连接服务。语法为:

imqkeytool -broker

在 UNIX 系统上,您可能需要使用超级用户 (root) 帐户来运行该实用程序。



上一页      目录      索引      下一页     


文件号码: 819-3561。  版权所有 © 2005 Sun Microsystems, Inc. 保留所有权利。