Kbase P40680: Linux - Database not started (8933) and SQL dies with (8841)
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  6/30/2004 |
|
Status: Verified
FACT(s) (Environment):
Linux Intel
FACT(s) (Environment):
Progress 9.1X
SYMPTOM(s):
Error: <command name | SQL Exception message>. (8933)
SQL server process terminated. (8841)
Error 8841 when connecting via ODBC, JDBC or SQL explorer
Error: [JDBC Progress Driver]:Database not started. (8933)
Database not started
[DataDirect-Technologies][ODBC PROGRESS driver][PROGRESS] Database not started
java.sql.SQLException: [JDBC Progress Driver]:Database not started
Database is started from proserve script
Permissions for executables under $DLC/bin are set correctly
JRE is installed and used
Correct version of JRE is installed
JDK is not installed
Running following commands
. $DLC/bin/slib_env
. $DLC/bin/java_env
ldd $DLC/bin/_sqlsrv2
produces these errors
libjvm.so => not found
libhpi.so => not found
CAUSE:
JRE is installed, but JDK is not installed.
_sqlsrv2 executable is dynamically linked with libjvm.so and libhpi.so which are shipped with either JDK or JRE installation. LD_LIBRARY_PATH needs to include the correct directory pathes for _sqlsrv2 to load correctly.
With JDK installation, these libraries are in $JDKHOME/jre/lib's subdirectories ($JDKHOME/jre/lib/i386/classic/ for libjvm.so and $JDKHOME/jre/lib
ative_threads/ for libhpi.so). With JRE installation, these libraries are in $JREHOME/lib's subdirectories ($JREHOME/lib
ative_threads and $JREHOME/lib/i386/classic).
However, $DLC/bin/java_env incorrectly sets LD_LIBRARY_PATH, it assumes JDK is always installed.
FIX:
Install correct JDK version, modify JDKHOME definition in $DLC/bin/java_env script to point to the new JDK installation.
Specifically, make following changes
"Linux")
THREADS_FLAG=native
JVMARGS="-ms8m ${JVMARGS}"
JDKHOME=newJDKHOME ============> replace with the new JDK home
JREHOME=$JDKHOME
JAVAHOME=$JREHOME
export JAVAHOME
JDKCP=$JDKHOME/lib/tools.jar
JRECP=$JDKCP
VMTYPE=classic
ARCH=i386
LD_LIBRARY_PATH=$JREHOME/lib/$ARCH:$JREHOME/jre/lib/$ARCH:$JREHOME/jre/lib
/$ARCH/${THREADS_FLAG}_threads:$JREHOME/jre/bin:$JREHOME/jre/lib/$ARCH/$VMTYPE:$
LD_LIBRARY_PATH
export LD_LIBRARY_PATH
PROLIBPATH=$LD_LIBRARY_PATH; export PROLIBPATH