用于 SAP 的 Sun Cluster 数据服务指南(适用于 Solaris OS)

设置锁定文件

请使用本节中的过程执行以下任务。

当实例在某个节点上处于活动状态时,设置锁定文件可以防止多次启动 SAP 实例。 多次启动同一实例会导致相互崩溃。 并且,这种崩溃还会使 SAP 关闭脚本无法完全关闭实例,这可能会导致数据损坏。

如果设置了锁定文件,当您启动 SAP 实例时,SAP 软件将锁定文件 startup_lockfile。 如果您在 Sun Cluster 环境之外启动了同一实例,然后试图在 Sun Cluster 环境下启用 SAP,则 Sun Cluster HA for SAP 数据服务将尝试启动同一实例。 但是,由于文件锁定机制的作用,这种尝试将失败。 数据服务将在 /var/adm/messages 中记录相应的错误消息。

中央实例或故障转移应用服务器的锁定文件与可伸缩应用服务器的锁定文件之间的唯一区别是:可伸缩应用服务器的锁定文件驻留在本地文件系统中,中央实例或故障转移应用服务器的锁定文件则驻留在群集文件系统中。

如何设置中央实例或故障转移应用服务器的锁定文件

请使用此过程来设置中央实例或故障转移应用服务器的锁定文件。

  1. 安装 sapstart 可执行文件的最新修补程序(Sun Cluster HA for SAP 用户通过该文件配置锁定文件)。

  2. 群集文件系统中设置中央实例锁定文件或故障转移应用服务器锁定文件。

  3. 编辑 sapstart 用于启动实例的配置文件,以便您为中央实例或故障转移应用服务器添加新的 SAP 参数 sapstart/lockfile。 此配置文件作为 startsap 脚本中的一个参数传送给 sapstart

    对于中央实例,请输入以下内容。


    sapstart/lockfile =/usr/sap/SID/ Service-StringSystem-Number/work/startup_lockfile
    

    对于故障转移应用服务器,请输入以下内容。


    sapstart/lockfile =/usr/sap/SID/ Dinstance-id/work/startup_lockfile
    
    sapstart/lockfile

    新的参数名称。

    /usr/sap/SID/ Service-StringSystem-Number/work

    中央实例的工作目录。

    /usr/sap/SID/ Dinstance-id/work

    故障转移应用服务器的工作目录。

    startup_lockfile

    Sun Cluster HA for SAP 使用的锁定文件名。

    SAP 将创建锁定文件。


    注意:

    必须将锁定文件路径定位在群集文件系统中。 如果将锁定文件路径定位在本地节点上,则无法防止从多个节点启动同一实例。


如何设置可伸缩应用服务器的锁定文件

请使用此过程来设置可伸缩应用服务器的锁定文件。

  1. 安装 sapstart 可执行文件的最新修补程序(Sun Cluster HA for SAP 用户通过该文件配置锁定文件)。

  2. 本地文件系统中设置应用服务器的锁定文件。

  3. 编辑 sapstart 用于启动实例的配置文件,以便您为可伸缩应用服务器添加新的 SAP 参数 sapstart/lockfile。 此配置文件作为 startsap 脚本中的一个参数传送给 sapstart


    sapstart/lockfile =/usr/sap/local/SID/Dinstance-id/work/startup_lockfile
    
    sapstart/lockfile

    新的参数名称。

    /usr/sap/local/SID/D instance-id/work

    可伸缩应用服务器的工作目录。

    startup_lockfile

    Sun Cluster HA for SAP 使用的锁定文件名。

    SAP 将创建锁定文件。


    注意:

    锁定文件将驻留在本地文件系统中。 锁定文件无法防止其他节点的多次启动。但是,它可以防止同一节点的多次启动。