Mostrando entradas con la etiqueta oracle. Mostrar todas las entradas
Mostrando entradas con la etiqueta oracle. Mostrar todas las entradas

domingo, 22 de marzo de 2015

WCS. jar manifest file does not contain the permissions attribute

Estaba trabajando con WebCenter Sites en local, y al actualizar la jre a java 8 el menú lateral de la vista administración desapareció. Al tratar de recuperarlo obtuve un error jar manifest file does not contain the permissions attribute .


Applet no firmado

Buscando un poco por internet, me encuentro con que esta versión de jre no permite la ejecución de applets si no están firmados. La solución fue añadir la excepción del dominio a la configuración java:


Configuración de java que activa el menú en WebCenter Sites en local

Con esto se soluciona el problema.

Saludos.

martes, 8 de enero de 2013

Reiniciando el pool de conexiones de Oracle 11g a lo bestia

La semana pasada me encontré con un problema en el entorno de desarrollo, el pool de conexiones de Oracle. El problema en concreto es que el pool se llena demasiado rápido y hay que estar reiniciando Oracle constantemente. Por defecto Oracle admite 20 conexiones de pool, aunque este valor se puede incrementar.

¿Pero que pasa si hay varias máquinas de desarrollo (tomcat + eclipse) apuntando al mismo oracle? Pues que aunque subamos el pool al final del día vuelve a estar lleno y es necesario vaciarlo.

La forma bonita sería entrar como SYSDBA y ejecutar:

SYS as SYSDBA:
SQL> EXEC DBMS_CONNECTION_POOL.stop_pool;
SQL> EXEC DBMS_CONNECTION_POOL.start_pool;

Pero claro, ¿qué ocurre si no tenemos el password del usuario? ¿ o si no están los listener necesarios configurados? ¿o simplemente si queremos hacerlo "de otra forma" pero que sea más rápida?.

Mi solución ha sido un poco bestia, como matar moscas a cañonazos, pero efectiva.

Viendo los procesos del sistema

ps aux|grep oracle

me di cuenta de había procesos con la nomenclatura oracle+SID, en mi caso oracleorcl.

ps aux|grep oraceorcl

Por tanto se pueden matar procesos a mano (kill -9) para liberar pool. Pero claro, 20 ó 30 procesos a mano es un poco pesado. Googleando un poco y combinando post nos sacamos de la manga el comando:

ps aux|grep oracleorcl| awk '{print $2}' |xargs kill –KILL

y matamos a todos de golpe :D

Lo malo es que tiramos las conexiones activas (vamos, que podemos joder al personal), así que hay que avisar a los compañeros antes, pero es un mal menor.

Y la pregunta clave, ¿todo esto para qué? Pues simplemente ganamos un poco te tiempo y ya no es necesario reiniciar Oracle, y porque me divirtió investigar este tema, por supuesto ;D

Por cierto que este problema de pools al parecer sólo se da en java, ya que el driver de oracle no libera las conexiones pilladas.

saludos

sábado, 8 de diciembre de 2012

Importando un DMP en Oracle 11g

Ayer perdí mucho tiempo intentando importar un dmp de Oracle 11g. Probando distintas opciones obtenía errores como

imp-00038: could not convert to environment character set's handle
IMP-00000: Import terminated unsuccessfully

o similares. Lo malo de esto es que en muchos post se explicaba la teoría y el porqué falla, pero nadie publicaba una solución clara. Después de muchas consultas pude dar con dicha solución.


Pasos

  1. Colocar el DMP en la ruta de la bd. En mi caso: C:\oracle\admin\test\dpdump
  2. Ejecutar:
    • impdp 'SYS AS SYSDBA' file=MYDAT01.DMP full=yes
      
    • Si no se tiene creado el usuario de oracle, o el tablespace empieza a fallar. En mi caso faltaba el tablespace:
      CREATE TABLESPACE MY_TS_DATA
        DATAFILE 'C:\oracle\admin\test\TS_DATA.dbf' SIZE 400M
        AUTOEXTEND ON NEXT 200K MAXSIZE 800M; 
      
  3. No olvidar que hay que logarse con el usuario de la exportación.

Información asociada

Aquí encontré la solución.

Este post es muy interesante.

Eso es todo. Al final la clave estaba en el 'SYS AS SYSDBA', ya que yo me logaba con otro usuario. Saludos

Related Posts Plugin for WordPress, Blogger...