Sun Java System Application Server 9.1 高可用性管理指南

使用 hadbm 管理命令

使用 hadbm 命令行实用程序来管理 HADB 域及其数据库实例和节点。hadbm 实用程序(也称为管理客户机)向指定的管理代理(用作管理服务器)发送管理请求,该管理代理可以从系统信息库访问数据库配置。

本节介绍了 hadbm 命令行实用程序,包括以下主题:

命令语法

hadbm 实用程序位于 HADB_install_dir/bin 目录中。hadbm 命令的常规语法如下:

hadbm subcommand  
[-short-option [option-value]] 
[--long-option [option-value]] 
[operands]

子命令标识了要执行的操作或任务。子命令区分大小写。大多数子命令都具有一个操作数(通常为 dbname)。

选项修改了 hadbm 如何执行子命令。选项区分大小写。每个选项都有长短两种形式。在短形式之前加一个破折号 (-);在长形式前加两个破折号 (--)。大多数选项都需要参数值,但布尔选项除外(布尔选项必须存在才能启用功能)。选项对于命令的成功执行不是必需的。

如果子命令需要数据库名称,而您未指定,则 hadbm 将使用默认数据库 hadb


示例 3–1 hadbm 命令示例

以下说明了 status 子命令:

hadbm status --nodes

安全性选项

出于安全性原因,所有 hadbm 命令都需要管理员密码。创建数据库或域时,使用 --adminpassword 选项设置密码。自此之后,您必须在执行数据库或域操作时指定该密码。

为增强安全性,请使用 --adminpasswordfile 选项指定包含密码的文件,而不是在命令行上输入密码。使用以下行定义密码文件中的密码:

HADBM_ADMINPASSWORD=password

用密码替换 password。忽略文件中的其他内容。

如果同时指定了 --adminpassword--adminpasswordfile 选项,则 --adminpassword 将优先使用。如果需要密码,但未在命令中指定密码,则 hadbm 将提示您输入密码。


注 –

仅在创建数据库或域时,才可以设置管理员密码,此后无法更改此密码。


除管理员密码之外,HADB 还需要数据库密码以执行修改数据库模式的操作。使用以下命令时,必须使用上述两个密码:hadbm createhadbm addnodeshadbm refragment

在命令行上使用 --dbpassword 选项指定数据库密码。与管理员密码类似,您也可以将密码放入文件并使用 --dbpasswordfile 选项指定文件位置。使用以下行设置密码文件中的密码:

HADBM_DBPASSWORD=password

为了测试或评估,您可以在创建数据库或域时使用 --no-adminauthentication 选项禁用密码验证。有关更多信息,请参见创建数据库创建管理域

下表汇总了 hadbm 安全性命令行选项。

表 3–4 hadbm 安全性选项

选项(短形式) 

说明 

--adminpassword=password

-w 

指定数据库或域的管理员密码。如果创建数据库或域时使用了该选项,则必须在每次使用 hadbm 操作数据库或域时提供该密码。 

可以使用该选项或 --adminpasswordfile,但两者不能同时使用。 

--adminpasswordfile=filepath

-W 

指定包含数据库或域的管理员密码的文件。如果创建数据库或域时使用了该选项,则必须在每次使用 hadbm 操作数据库或域时提供该密码。 

可以使用该选项或 --adminpassword,但两者不能同时使用。 

--no-adminauthentication 

-U 

创建数据库或域时,使用该选项可指定无需管理员密码。出于安全性原因,请勿在生产部署中使用该选项。 

--dbpassword= password

-p 

指定数据库密码。如果在创建数据库时使用了该选项,则必须在每次使用 hadbm 命令操作数据库时提供该密码。为 HADB 系统用户创建密码。至少应为 8 个字符。可以使用该选项或 --dbpasswordfile,但两者不能同时使用。

--dbpasswordfile= filepath

-P 

指定包含 HADB 系统用户密码的文件。可以使用该选项或 --dbpassword,但两者不能同时使用。

常规选项

常规命令选项可用于任何 hadbm 子命令。它们都是布尔选项,默认情况下为 false。下表介绍了 hadbm 常规命令选项。

表 3–5 hadbm 常规选项

选项(短形式) 

说明 

--quiet 

-q 

在无提示、没有任何描述性消息的情况下执行子命令。 

--help 

-? 

显示该命令和所有支持的子命令的简短说明。无需任何子命令。 

--version 

-V 

显示 hadbm 命令的版本详细信息。无需任何子命令。

--yes 

-y 

以非交互模式执行子命令。 

--force 

-f 

如果已满足命令的发出条件,则非交互地执行命令,并且不抛出错误。 

--echo 

-e 

显示带有所有选项的子命令和选项的用户定义值或默认值,然后执行子命令。 

--agent=URL

-m 

管理代理的 URL。URL 为:hostlist:port,其中 hostlist 是以逗号分隔的主机名或 IP 地址列表,port 是运行管理代理的端口号。

默认值为 localhost:1862。 

注:该选项对 hadbm addnodes 无效。

环境变量

为了方便起见,您可以设置环境变量而不用指定命令选项。下表介绍了与 hadbm 命令选项对应的环境变量。

表 3–6 HADB 选项和环境变量

长形式 

短形式 

默认值 

环境变量 

--adminpassword 

-w 

无 

$HADBM_ADMINPASSWORD 

--agent 

--m 

localhost:1862 

$HADBM_AGENT 

--datadevices 

-a 

1

$HADBM_DATADEVICES 

dbname 

无 

hadb

$HADBM_DB 

--dbpassword 

-p 

无 

$HADBM_DBPASSWORD 

--dbpasswordfile 

-P 

无 

$HADBM_DBPASSWORDFILE 

--devicepath 

-d 

Solaris 和 Linux:/var/opt/SUNWhadb

Windows:C:\Sun\AppServer \SUNWhadb\vers,其中 vers 是 HADB 的版本号。

$HADBM_DEVICEPATH 

--devicesize 

-z 

无 

$HADBM_DEVICESIZE 

--echo 

-e 

False 

$HADBM_ECHO 

--fast 

-F 

False 

$HADBM_FAST 

--force 

-f 

False 

$HADBM_FORCE 

--help 

-? 

False 

$HADBM_HELP 

--historypath 

-t 

Solaris 和 Linux:/var/opt/SUNWhadb

Windows:REPLACEDIR,运行时由实际 URL 替换。 

$HADBM_HISTORYPATH 

--hosts 

-H 

无 

$HADBM_HOSTS 

--interactive 

-i 

True 

$HADBM_INTERACTIVE 

--no-refragment 

-r 

False 

$HADBM_NOREFRAGMENT 

--portbase 

-b 

15200 

$HADBM_PORTBASE 

--quiet 

-q 

False 

$HADBM_QUIET 

--repair 

-R 

True 

$HADBM_REPAIR 

--rolling 

-g 

True 

$HADBM_ROLLING 

--saveto 

-o 

无 

$HADBM_SAVETO 

--set 

-S 

无 

$HADBM_SET 

--spares 

-s 

$HADBM_SPARES 

--startlevel 

-l 

normal 

$HADBM_STARTLEVEL 

--version 

-V 

False 

$HADBM_VERSION 

--yes 

-y 

False 

$HADBM_YES