Cuando WebSphere Business Monitor intenta procesar un suceso en la plataforma AIX, se devuelve un error de SQL. Lo mismo ocurre cuando WebSphere no consigue inicializar la conexión a la base de datos, sea durante el arranque o durante el proceso de sucesos. La anomalía se debe a un límite, impuesto por el sistema operativo, sobre el número de segmentos de memoria compartida que están disponibles para IBM DB2.
Se ha producido un error en la conexión de prueba del origen de datos MonitorDataSource sobre el servidor server1 en el nodo Node01 con la excepción siguiente: java.lang.Exception: java.sql.SQLException: SQL1224N A database agent could not be started to service a request, or was terminated as a result of a database system shutdown or a force command. SQLSTATE=55032 DSRA0010E: Estado SQL = 55032, Código de error = -1,224.
Cuando se produce este error, debe cambiar la configuración de DB2 para aumentar el número de segmentos de memoria compartida. Actualmente, el experto en recuperación no da soporte al uso de la definición de un alias DB2 con un bucle de retorno para evitar el problema de memoria compartida.
Solución
# Adición local para arreglar problema de memoria compartida de AIX: EXTSHM=ON export EXTSHM
db2set DB2ENVLIST=EXTSHM
Esto establece una variable de perfil de DB2 en cada instancia que causa que se incluya el valor de la variable de entorno EXTSHM en el entorno de los procesos de daemon de DB2 al iniciarlos. La definición de EXTSHM en los db2profiles de cada instancia, que se ejecutan al iniciar la sesión, asegura que la variable se establezca en cualquier entorno de propietario de instancia. Por último, si se coloca en /etc/rc.db2 se asegura que la variable se establezca cuando se inician los procesos de DB2 durante el arranque. Finalmente, reinicie el sistema para asegurarse de que todos los procesos de DB2 se han iniciado con EXTSHM=ON en su entorno.
if [ -x $INSTHOME/sqllib/adm/db2set ] then if [ "`$INSTHOME/sqllib/adm/db2set DB2ENVLIST`" != "EXTSHM" ] then $INSTHOME/sqllib/adm/db2set DB2ENVLIST=EXTSHM fi fiEste código hace que se establezca la variable de perfil de instancia DB2ENVLIST la primera vez que se utilice una instancia nueva.
EXTSHM=ON export EXTSHM