Entradas

Solucionado: Error en ORDS, ORA-00604, error occurred at recursive SQL level 1, ORA-01031 insufficient privileges

Un día cualquiera trabajando con Oracle APEX, cuando los usuarios me reportan problemas al acceder a los servicios REST. Reviso el log del tomcat en el cual esta desplegado mi ORDS y me encuentro con el siguiente error: Caused by: Error : 604, Position : 0, Sql = select nvl(h.items_per_page,m.items_per_page) items_per_page, t.etag_type, t.etag_query, h.source_type, cursor(select p.name, p.bind_variable_name, p.source_type,p.access_method, p.param_type from user_ords_parameters p where p.handler_id = h.id) parameters, h.source from user_ords_modules m, user_ords_templates t, user_ords_handlers h where m.status = 'PUBLISHED' and t.id = h.template_id and m.id = t.module_id and h.id = :1 , OriginalSql = select nvl(h.items_per_page,m.items_per_page) items_per_page, t.etag_type, t.etag_query, h.source_type, cursor(select p.name, p.bind_variable_name, p.source_type,p.access_method, p.param_type from user_ords_parameters p where p.handler_id = h.id) parameters, h.source from user_ords_...

Instalar OCI8 en CentOS

Esta instalación está hecha sobre un Centos CentOS Linux release 7.2.1511 de 64 bits Version de PHP 5.6.30 Version de Apache 2.4.6 Base de datos Oracle 11g - Cualquier release. Instalar las siguientes librerías: # yum install php-pear php-devel zlib zlib-devel bc libaio glibc # yum groupinstall "Development Tools" Descargar del siguiente enlace el Oracle instantclient: http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html Para Oracle 11g y php5.6: oracle-instantclient11.2-devel-11.2.0.3.0-1.x86_64.rpm oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm Ejecutar: # rpm -ivh oracle-instantclient* Una vez instalado el Oracle instantclient, crear los enlaces simbólicos: #  ln -s /usr/include/oracle/11.2/client64  /usr/include/oracle/11.2/client #  ln -s /usr/lib/oracle/11.2/client64  /usr/lib/oracle/11.2/client Ahora configuraremos la variable LD_LIBRARY_PATH para indicar donde están instaladas l...
APEX ADMIN LOCKED Un usuario de desarrollo bloqueo el usuario de ADMIN de Apex, Usualmente este procedimiento se soluciona naturalmente corriendo el script apxchpwd.sql, sin embargo este después de ser ejecutado, el usuario admin seguía dándome el error: Account locked. Por lo que decidí  investigar un poco mas a fondo.   El problema, Resulta que el archivo apxchpwd.sql consulta el usuario admin dentro del esquema que ha sido instalado. Para mi caso la versión que tengo instalada es APEX 4.2. Y modifica la sesion de admin cambiando su parámetro de contraseña. Solución, Para corregir este problema debemos ir al directorio donde esta instalado apex:  ORACLE_HOME/apex  Debemos editar la linea 33, la cual especifica el schema de base de datos en el cual esta instalado APEX, esta debe estar modificada por la versión que tenemos instalada, esto es frecuente si ha existido una actualización del APEX. Editamo...

Listas guias para numeros de parches de Oracle Databases

Oracle hace extremadamente compleja la busqueda de sus parches. Por eso econtre una lista que sera de mucha ayuda para bajar los parches de metalink o tener una guia en general. Patchset / PSU   Patch Number     11.2.0.1.1           9352237 11.1.0.7.3           9352179   11.1.0.7.2           9209238 11.1.0.7.1           8833297 11.1.0.7              6890831 10.2.0.5               8202632 10.2.0.4.4            9352164 10.2.0.4.3            9119284 10.2.0.4.2       ...

ORA-30036: Unable to extend segments in undo tablespace 'UNDO' en Oracle Database 10g Express Edition

ORA-30036 indica que la base en este caso una Oracle Database XE tiene problemas con el tablespace UNDO. Por lo tanto se deberá ejecutar las siguientes sentencias en SQLPLUS como sys para solucionar este problema, que en general aplica para cualquier tablespace (menos con temp). Primero verificamos si esta activada la opción de autoextend en nuestro tablespace undo de la siguiente manera: select autoextensible from dba_data_files where tablespace_name ='UNDO'; si el tablespace UNDO no tiene activado el autoextend, se deberá ejecutar: alter database datafile 'C:\ORACLEXE\XE\ORCL\UNDO.DBF' autoextend on e incrementamos su tamaño así como su máximo tamaño posible de incremento (dependiendo de nuestra necesidad): En este caso le damos un máximo tamaño de incremento de 1GB: alter database datafile 'C:\ORACLEXE\XE\ORCL\UNDO.DBF' autoextend on maxsize 1024m; Y para este caso le aumentamos el tamaño actual para que inmediatamente pueda ejecutar las sentencias SQ...

Configuración del repositorio Enterprise Manager

Durante la instalación de la Base de Datos Oracle, el repositorio de la consola Enterprise Manager es configurado, y listo para ser usado. Pero, que sucede si algo pasa con esta configuración? pues aquí podrán ver cómo eliminar el repositorio existente y crear uno nuevo: 1.- Eliminación del repositorio existente: emca -deconfig dbcontrol db -repos drop Esto lo puedes ejecutar desde un command prompt de windows, o una consola linux o unix (verifica primero que las variables de entorno estén correctamente seteadas con el software de tu base PATH, ORACLE_HOME, ORACLE_SID). 2.- Crear de nuevo el repositorio: emca -config dbcontrol db -repos create Al ejecutar este comando te preguntará el nombre del servidor, tu base de datos y el puerto en que se encuentra, y listo, el repositorio está configurado y listo para usarse. Es mucho más fácil recrear el repositorio, que investigar que fue lo que pasó, no pierdes ninguna información de los datos de tu base ni de tu esquema.

Configuración de puertos en bases de datos Oracle, isqplus, Enterprise Manager, etc.

Las bases de datos Oracle tienen definido puertos para sus aplicaciones por defecto, como por ejemplo para isqlplus es el 5560, pero cuando tenemos muchas bases de datos Oracle instaladas en un servidor y en especial en uno de desarrollo, los puertos varían, comúnmente nos despreocupamos de conocer los puertos que están asignados para nuestros aplicaciones de base de datos, por lo tanto aquí les indico como acceder a el archivo portlist.ini en el cual se encuentran la lista de aplicaciones con sus respectivos puertos, vale recalcar que si es modificado este archivo NO afecta directamente los puertos, estos deben ser modificados a través de la consola de administración. El archivo portlist.ini se encuentra en: ORACLE_HOME/install/portlist.ini Es decir si mi base de datos es una 10.2.0.1 mi archivo portlist.ini estaría ubicado en la siguiente dirección: C:\oracle\product\10.2.0\db_1\install