启动和停止 AS ABAP
单位概述
本课的主题是 SAP 系统的启动和停止。 这是系统管理的两项基本任务。 您还将了解可用的日志和跟踪选项,以便能够在发生错误时做出正确反应。
单位目标
完成本单元后,您将能够:
• 描述一个 SAP 系统的启动过程的过程
• 描述 SAP 实例的文件系统结构
• 描述 SAP NetWeaver AS ABAP 的一般启动过程。
• 描述SAP NetWeaver AS ABAP+Java 的一般启动过程。
• 描述在启动过程中分析了哪些配置文件。
• 操作工具来启动和停止 SAP NetWeaver AS ABAP+Java
• 使用 AS ABAP 启动日志分析问题
• 使用工作中心停机时间管理计划和安排 SAP 系统的停机时间。
课程:系统启动:过程
课程概述
本课概述了如何启动和停止 SAP 系统。它将讨论文件系统中包含启动实例的重要数据的区域。
课程目标
完成本课程后,您将能够:
• 描述一个 SAP 系统的启动过程的过程
• 描述 SAP 实例的文件系统结构
业务示例
作为 SAP 系统的管理员,您需要停止系统进行维护或更改系统参数后,然后重新启动它们。
SAP系统启动流程
SAP系统的启动是能够使用该系统的基本前提。在对正在使用的硬件进行维护工作并更改 SAP 系统的配置文件之后,还需要重新启动 SAP 系统。启动 SAP 系统是每个管理员都应该熟悉的初始过程。
本课介绍的启动过程描述了启动 SAP 系统的过程。每个 SAP 系统都有一个数据库和至少一个实例。带有 Java 堆栈的 SAP 系统也有一个中央服务实例。具有 ABAP 堆栈的系统可以包含一个 ABAP 中央服务实例,该实例提供 ABAP 入队服务和 ABAP 消息服务器。在这种情况下,中央实例没有入队工作流程或消息服务器。因此,具有 ABAP 和 Java 堆栈的 SAP 系统可以有两个中央服务实例:一个用于 Java,一个用于 ABAP。
SAP系统的启动流程图展示了SAP系统的启动流程。如果 SAP 系统有 ABAP 中央服务实例或 (Java) 中央服务实例,则首先启动这些实例。
图 15:SAP 系统的启动流程
然后启动中心实例。中央实例需要一个正在运行的数据库(对话实例也是如此)。如果数据库尚未启动,则在中央实例的启动过程中首先启动。也可以在实际 SAP 系统启动之前启动数据库,例如使用数据库工具。
下面将更详细地解释启动序列。 SAP 系统的实例可以分为三个不同的类别,启动和停止过程具有不同的优先级。
1. 有入队但没有 ABAP 分派器的实例
2. 带有 enqueue 和 ABAP 调度程序的实例
3. 所有其他实例
入队过程仅在每个 ABAP/Java 堆栈的一个实例上发生,在启动序列中起着特殊的作用。这些实例通常还包括消息服务器,必须在所有其他实例之前启动。 (Java) 中央服务实例或 ABAP 中央服务实例(优先级 1)不需要正在运行的数据库,这就是在启动这些实例中的任何一个时数据库未启动的原因。具有 ABAP 调度程序和入队工作进程(优先级 2)以及对话实例(优先级 3)的中央实例需要 ABAP 工作进程或 Java 服务器进程登录到的已启动数据库。因此,第一步是在启动此类实例时启动数据库(除非它已经在运行)。如果 SAP 系统具有 ABAP 中央服务实例,则该系统不包含优先级 2 实例。
从根本上说,启动过程是在多个步骤中执行的。启动过程由操作系统用户 <sid>adm 触发:
• 启动中央服务实例
(Java) Central Services 由 Java 消息服务器和 Java enqueue 服务器组成,ABAP Central Services 提供 ABAP 消息服务器和 ABAP enqueue 服务器。
• 启动数据库
整个 SAP 系统的底层元素是数据库。在启动提供 ABAP 工作流程或 Java 服务器流程的 SAP 实例之前,它必须处于运行状态。但是,它可能不会在中央服务实例启动之前运行或启动。当中央或对话实例启动时,系统会在启动过程被触发时检查数据库是否正在运行,并在必要时启动它。
• 启动中心实例
在 AS ABAP 或 ABAP+Java 系统中,如果没有 ABAP Central Services 实例且该实例有入队工作流程,则该中心实例的优先级为 2;否则中心实例的优先级为 3,就像对话实例一样。优先级为 2 的中心实例在对话实例之前启动,而优先级为 3 的中心实例与对话实例同时启动。在 AS Java 系统中,中心实例始终具有优先级 3,并且始终以对话实例启动。
• 启动对话实例
如果中心实例的优先级为 3,则对话实例与中心实例同时启动。如果中央实例的优先级为 2,则在中央实例启动过程完成后启动对话实例。
停止进程
SAP 系统以相反的顺序停止。具有入队的实例总是最后停止。
在启动过程中评估配置文件
SAP 系统的每个实例都需要文件系统中的数据。这包括所有实例都可以访问(全局)的数据,以及只能由实例单独访问的数据。在文件系统中,实例的数据包含在 usr/sap 目录中,并在该目录中进一步组织到子目录中。 AS ABAP+Java 的文件系统结构图(简化)显示了这种结构。
图 16:AS ABAP+Java 的文件系统结构(简化)
<SAPSID> 目录包含只能由该 SAP 系统访问的所有数据。具有 ABAP 堆栈的 SAP 系统中央实例的数据位于 DVEBMGS<no> 目录中(其中 <no> 是实例编号)。该目录包括其他目录,例如work,其中包含启动进程的日志,例如j2ee目录,其中包含有关Java节点的数据和其他信息,以及exe目录,其中包含内核。内核目录包括系统启动时启动的程序。具有 ABAP 堆栈的 SAP 系统的对话实例的目录具有名称 D<No>,并且具有与中央实例相同的结构。目录 SCS<No> 用于具有 Java 堆栈的 SAP 系统的中央服务实例。通常,中心实例和所有对话实例位于不同的主机上。这意味着每个对话框实例也有自己的目录。如果在一台主机上安装了多个对话实例,则它们具有不同的实例编号。 SYS 目录包含所有实例都可以访问的数据: 在 Windows 操作系统上,它通常位于中心实例所在的文件系统中。在其他操作系统上,SYS 目录位于其自己的文件系统中,名称为 sapmnt。在 Windows 操作系统上,“share”在 SYS 上方的 sap 目录中创建,名称为 sapmnt。此共享允许所有实例访问 SYS 目录。在其他操作系统上,会在每个实例的文件系统中创建一个 SYS 目录,其中包含指向 sapmnt 文件系统的子目录的链接。
SYS 目录尤其包含以下子目录:
global 包含全局数据
profile 包含默认配置文件,启动和实例配置文件 exe 包含内核。
在实例启动过程中,通过sapcpe程序将全局exe目录的内核复制到相应实例的本地exe目录中。在 Windows 操作系统上,exe 目录还包含 <codepage> 子目录,该子目录本身包含 <platform> 子目录。
<codepage> 是 uc 表示 Unicode,而 nuc 表示非 Unicode。
对于在 ABAP 堆栈为非 Unicode(Java 堆栈始终为 Unicode)的 Windows 操作系统上运行的 AS ABAP+Java 系统,这意味着 exe 目录包含两个子目录 nuc 和 uc。从 Basis 7.11 版开始,Windows 以外的操作系统与上面列出的 Windows 操作系统具有相同的结构。
对于在 Windows 以外的操作系统上运行的 SAP NetWeaver 7.00 系统,内核包含在全局 exe 目录中。具有非 Unicode ABAP 堆栈的 AS ABAP+Java 系统是一个例外。在这种情况下,
非 Unicode 内核仍然位于全局 exe 目录中。还有
一个 uc 子目录,其中 Unicode 内核位于 <platform> 子目录中。
sapstartsrv 程序在开始时读取启动配置文件。启动配置文件定义了在启动过程中必须执行哪些步骤或实例的哪些进程由 sapstartsrv 启动。首先,执行sapcpe(中央补丁环境),它复制、复制或链接目录和程序。 sapcpe 用于将内核从全局目录复制到实例的本地 exe 目录。
例如,启动配置文件定义如果数据库尚未针对中央实例和对话实例运行,则应启动该数据库。 IGS 看门狗也被启动,并且在具有 ABAP 堆栈的系统上,启动 ABAP 调度程序,并在必要时启动 ABAP 消息服务器。
通常,启动配置文件不会更改。尽管如此,如果启动配置文件中的启动过程信息发生更改,则必须重新启动 sapstartsrv。
图 17:实例的开始和配置文件评估
如果启动实例,则评估默认和实例配置文件的参数,并使用这些参数启动实例。参数在所有实例的默认配置文件中定义。对于每个实例,都有一个单独的实例配置文件,用于定义相应实例的参数化。
原文下载: