Skip to Main Content
 
Titelbild Muniqsoft Training

Search Results

Oracle Tipp Text

Oracle ORDS Check Skript für gängigste Webserver 404 Fehler

Bereich:ORDS, Version: ab ORDS 21.2, Letzte Überarbeitung: 05.05.2020

Keywords:ORDS Check Skript für Fehler 404

Nachdem ich schon mehere Tage mit der Suche nach Fehlern im Oracle ORDS mit APEX verbracht habe, war es mal Zeit ein Prüf-Skript zu schreiben.

Das Prüfskript prüft einige der gängigsten Probleme die einen Web Fehler 404 erzeugen.

Das Skript fragt Sie die folgenden Parameter:
Pfad des webapss Ordner (meist /opt/tomcat*[/latest] )
Name des ORDS meist "ords". Das ist der Name, der in der Datei ords.war verwendet wird.
Zusätzlich werden die Passwörter für die Accounts APEX_PUBLIC_USER, ORDS_PUBLIC_USER, APEX_REST_PUBLIC_USER
gefragt und eine Anmeldung an der Datenbank durchgeführt. Fehler, wie Account Locked oder Passwort falsch werden dadurch gefunden.
 

Der letzte Check-Teil prüft die 4 XML Config-Dateien. Diese waren bei unseren Installationen teilweise nicht vollständig angelegt worden.

######################################################################################################
#!/bin/bash
# chmod u+x check_ords.sh
######################################################################################################

#export CONFIG_DIR=/opt/oracle/ords_conf
#export ORACLE_ORDS=ords

read -p 'Webserver webapps Ordner: [/opt/tomcat/latest]' -r WEB_DIR
WEB_DIR=${WEB_DIR:-/opt/tomcat/latest}
read -p 'Oracle ORDS Name: [ords]' -r ORACLE_ORDS
ORACLE_ORDS=${ORACLE_ORDS:-ords}
read -p 'Passwort APEX_PUBLIC_USER: ' -r -s APEX_PU
echo
read -p 'Passwort ORDS_PUBLIC_USER: ' -r -s ORDS_PU
echo
read -p 'Passwort APEX_REST_PUBLIC_USER: ' -r -s APEX_RPU

echo -e "\nCheck XML Config Files:"
export CONFIG_DIR=`cat $WEB_DIR/webapps/$ORACLE_ORDS/WEB-INF/web.xml | egrep "<param-value>/" | cut -c22-90 | sed -e 's/<\/param-value>//g'`
export ORACLE_HOSTNAME=`cat $CONFIG_DIR/$ORACLE_ORDS/defaults.xml | egrep "db\.hostname" | cut -c26-89 | sed -e 's/<\/entry>//g'`
export ORACLE_SERVICENAME=`cat $CONFIG_DIR/$ORACLE_ORDS/defaults.xml | egrep "db\.servicename" | cut -c29-89 | sed -e 's/<\/entry>//g'`
export ORACLE_PORT=`cat $CONFIG_DIR/$ORACLE_ORDS/defaults.xml | egrep "db\.port" | cut -c22-89 | sed -e 's/<\/entry>//g'`

echo "Found: Host=$ORACLE_HOSTNAME, Port=$ORACLE_PORT, Service=$ORACLE_SERVICENAME"
echo "Found: ORDS=$ORACLE_ORDS, Config_Dir=$CONFIG_DIR"

function check_account()
{
echo "Check: $1"
$ORACLE_HOME/bin/sqlplus -S -L $1/$2@$ORACLE_HOSTNAME:$ORACLE_PORT/$ORACLE_SERVICENAME<<EOF | egrep "ORA-"
EXIT
EOF
}

echo "# Checking Accounts ..."
check_account APEX_PUBLIC_USER $APEX_PU
check_account ORDS_PUBLIC_USER $ORDS_PU
check_account APEX_REST_PUBLIC_USER $APEX_RPU


function check_config_files()
{
if [ -f "$CONFIG_DIR/$ORACLE_ORDS/conf/$1" ]; then
    echo "OK: $1 `ls -al $CONFIG_DIR/$ORACLE_ORDS/conf/$1 |  awk '{ print  $1" "$3":"$4}'`"
else
    echo "$1 missing"
fi
}

echo "# Checking XML Config Files in $CONFIG_DIR/$ORACLE_ORDS/conf"
check_config_files apex.xml
check_config_files apex_al.xml
check_config_files apex_pu.xml
check_config_files apex_rt.xml

echo "# Optional Checks:"
echo "java -jar $ORACLE_ORDS.war validate"
echo "java -jar $ORACLE_ORDS.war validate --database apex"


Ich hoffe Sie können damit zukünftig Ihre Oracle ORDS Fehler finden ...



Weitere Interessente Artikel zum Thema:


Empfohlene Schulungen zum Thema: