oninit 实用程序

oninit 实用程序启动数据库服务器。

在 UNIX™ 和 Linux™ 上,必须作为用户 rootgbasedbt 登录才能执行 oninit ,或者非根数据库服务器的所有者运行 oninit 实用程序。用户 gbasedbt 应该是组 gbasedbt 的唯一成员。从命令行运行 oninit 命令。您可以允许属于 DBSA 群组的用户执行 oninit 命令。请参阅允许 DBSA 群组用户执行 oninit 命令 (UNIX)

在 Windows™ 上,GBase 8s 作为 Windows 服务运行。任一具有启动 Windows 服务权限的用户都可以启动 GBase 8s 服务。该服务控制程序执行带有您提供的选项的 oninit 实用程序。

语法

Other options for starting the server
Initialize disk space
表 1. oninit 命令元素
元素 用途 关键注意事项
-D 用 Enterprise Replication 启动数据库服务器并禁用高可用集群复制  
-i 初始化根 dbspace 的磁盘空间,以至于它可以被数据库服务器用于执行启动操作。 磁盘空间需要被初始化一次,以对服务器准备的数据存储。

缺省情况下,为了防止数据丢失,不能重新初始化磁盘空间。要重新初始化现有的根 dbspace,必须设置 FULL_DISK_INIT 配置参数为 1 并执行 oninit -i 命令。

请参阅 初始化根 sbspace 的磁盘空间

-j 在管理模式下启动服务器 请参阅 在管理模式下启动服务器
-p 在不删除临时表的条件下启动数据库服务器 如果使用该选项,数据库服务器将加快启动,但是磁盘上临时表使用的空间不会被回收
-PHY 启动服务器最新的检查点。该 -PHY 选项用于告诉服务器只做物理恢复而不需要逻辑恢复。 该选项常用于启动辅助服务器。必须使用下列命令来连接辅助服务器到主服务器:
onmode -d secondary
                  onmode -d RSS
如果主服务器上最新的检查点没有在辅助服务器上运行,那么上述连接失败
-s 在静态模式下启动服务器 使用该选项时,必须关闭数据库服务器。

当数据库服务器处于静态模式,只有用户 gbasedbt 可以访问数据库服务器

-S 在静态模式下,以标准方式启动数据库;禁用 HDR 当数据库服务器处于静态模式,只有用户 gbasedbt 可以访问数据库服务器
-SDS= alias 对于共享磁盘服务器,启动当前的服务器并用序列名指定主服务器 当主服务器和所有的 SDS 服务器都关闭时,使用 -SDS=alias 选项启动已设计的 SDS 服务器作为主服务器。The -SDS=alias 标志不能与 -i 标志结合。
-U username 指定哪些用户可以以管理模式访问服务器当前的会话 gbasedbt 用户和 DBSA 群组成员都是具有管理模式的用户。

请参阅 在管理模式下启动服务器

-v 显示服务器启动时的详细信息  
-w max_seconds 启动数据库服务器,并等待指示成功或失败,直到该服务器在联机模式下完全启动或经过 max_seconds 指定的秒数 等待时间的缺省值是 600 。

该选项在高可用集群的辅助服务器上不可用。

请参阅 使用脚本启动服务器

-y 防止验证提示 -y 选项默认所有验证提示为是

用法

缺省情况下,oninit 实用程序显示在服务器启动过程中的验证提示。可以使用 -y 选项忽略这些验证提示。使用 -v 选项查看其详细信息。在UNIX 和 Linux , oninit 输出显示的是标准输出。在 Windows, 可以通过设置 ONINIT_STOUT 环境变量来查看 oninit 输出并保存该输出到一个文件中。

可以以不同操作方式启动服务器。缺省情况下,如果执行不带选项的 oninit 命令,那么该服务器以联机方式启动。当数据库服务器在联机模式下,所有被授权的用户都可访问此服务器。

如果执行 oninit -FILE 命令,那么不须在启动数据库服务器之前蛇者本地环境变量。数据库服务器自动使用 onconfig 文件中的值作为其环境变量。

在管理模式下启动服务器

管理模式是仅限管理员操作模式,可用来执行维护操作包括那些需要运行的 SQL 或 DDL 命令。当处于管理模式,数据库服务器只同意下列用户的请求:

要使用 -U 选项添加管理方式用户时,用逗号分隔用户名 ,例如: Karin,Sarah,Andrew.

可使用 -U " " 选项移除除 gbasedbt 用户和 DBSA 群组之外的所有管理方式用户:oninit -U " "

初始化根 sbspace 的磁盘空间

在系统上首次安装 GBase 8s 后,需要初始化数据库服务器的根 dbspace 的磁盘空间。该根 dbspace 由 ROOTPATH 配置参数指定。

如果您执行一个典型的安装并且选择创建数据库服务器或执行客户型安装,那么磁盘空间会自动初始化。否则,您必须通过执行 oninit -i 命令初始化磁盘空间。

如果必要,可以重新初始化磁盘空间。重新初始化磁盘会破坏数据库服务器当前所管理的所有数据。当重新初始化时,数据库服务器必须处于脱机方式。

缺省情况下,不能重新初始化正被数据库服务器使用的根 dbspace 。如果一个 0 页在根路径下(位于第一个 chunk 的第一页) ,磁盘初始化失败。可以通过设置 FULL_DISK_INIT 配置参数为 1 来运行现有的根 dbspace 的磁盘重新初始化。

使用脚本启动服务器

可以在自定义的启动脚本中使用 oninit -w 命令执行自动启动。-w 选项强制服务器等待,直到启动完全成功,并表明服务器在联机模式下,通过返回到 shell 的提示符为 0的返回码 。如果服务器不在联机模式下的超时期限内,服务器将返回代码 1 返回到 shell 提示符,并在联机日志中写入一条警告消息。

超时的缺省值为 600 秒(10 分钟),您可以修改成任一整型值。

在下列命令运行完毕之后,如果数据库在 60 秒内启动失败,会出现一个码为 1 的提示:

oninit -w 60

要确定服务器无法启动的原因,请检查联机日志。当您在脚本里使用 oninit -w 命令,可用 onstat - (打印输出头)命令检查该服务器是否处于联机模式。

允许 DBSA 群组用户执行 oninit 命令 (UNIX)

要允许属于 DBSA 群组的用户,而不是用户 gbasedbt 执行 oninit 命令,必须以用户 root 身份登录并更改 $GBASEDBTDIR/bin 目录下 oninit 实用程序的权限,将 6754 改为 6755 。

1 请参阅 -FILE 选项