Script starts mysql DB, Instead of SQL anywhere DB.

Document ID : KB000049114
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

When you install CABI 3.3 and use SQL Anywhere as CMS database, while starting the BO services using the script that always starts database as My Sql Server even when SQL Anywhere is chosen as database while installation.

Script for start/stop after restart SERVER ( /etc/init.d/BobjEnterprise120) contains:

case "$1" in
'start')
# setup the bobje dir
BOBJEDIR="/opt/CA/SharedComponents/CommonReporting3/bobje/"
# Source the env.sh file
. "$BOBJEDIR"/setup/env.sh
# Source the ccm.config file
. "$BOBJEDIR"/ccm.config
if [ -d "$BOBJEDIR"/tomcat ]; then
$SU - "$BOBJEUSERNAME" -c "$BOBJEDIR"/tomcatstartup.sh
logger -p daemon.info -t bobj "Started Tomcat"
fi
if [ -d "$BOBJEDIR"/mysql ]; then
$SU - "$BOBJEUSERNAME" -c "$BOBJEDIR"/mysqlstartup.sh
logger -p daemon.info -t bobj "Started MySQL server"
fi
$SU - "$BOBJEUSERNAME" -c "$BOBJEDIR/ccm.sh -start all"
logger -p daemon.info -t bobj "Started servers"
if [ -f "/etc/redhat-release" ]; then
touch $Lockfile
fi
;;

Solution:

This is a known bug documented in SAP "1697001 - SAPBusinessObjects Enterprise XI 3.1 SP5: Startup Script starting incorrect cms database on Unix". The workaround is below.

As a workaround you can manually edit the BobjEnterprise120 file or use the attached shell script. Please download the gzip file, extract it, chmod +x if needed and execute the script in the same location as your BobjEnterprise120 Init script.

Or

Replace the existing sections with the Modified once and change the username and password for the stop script:

  1. Update the MySql start script to SQLAW
    1. Existing
      if [ -d "$BOBJEDIR"/mysql ]; then
      $SU - "$BOBJEUSERNAME" -c "$BOBJEDIR"/mysqlstartup.sh
      logger -p daemon.info -t bobj "Started MySQL server"
    2. Modified
      if [ -d "$BOBJEDIR"/SQLAW ]; then
      $SU - "$BOBJEUSERNAME" -c "$BOBJEDIR"/sawstartup.sh
      logger -p daemon.info -t bobj "Started SQLAW server"
  2. Update MySql Stop script
    1. Existing
      if [ -d "$BOBJEDIR"/mysql ]; then
      $SU - "$BOBJEUSERNAME" -c "$BOBJEDIR/mysqlshutdown.sh
      DATABASEUID="bobje" DATABASEPWD="bobje""
      logger -p daemon.info -t bobj "Stopped MySQL server"
    2. Modified
      if [ -d "$BOBJEDIR"/SQLAW ]; then
      $SU - "$BOBJEUSERNAME" -c "$BOBJEDIR/sawstop.sh DATABASEUID="
      bobje" DATABASEPWD=bobje;" { Please change the username and
      password}
      logger -p daemon.info -t bobj "Stopped SQLAW server"