Feed on Posts or Comments

Category ArchiveOracle



Oracle Fernando José on 19 May 2011

Migrar una máquina virtual Windows XP de VMWare a VirtualBox

Esto es bastante sencillo pero si no se sigue paso a paso puede ser complejo porqué tendremos que darnos contra el regedit o encontrarnos con que no tenemos conexión de red a la máquina.

Lo primero es lanzar la máquina virtual de Windows XP con VMWare y ya dentro, en el panel de control desinstalar los VMWare Tools.

Lo segundo e importante es descargar y dejar el driver de la tarjeta de red  Intel pro 1000 para XP dentro de la máquina virtual. Al parecer VMWare reemplaza los drivers para la controladora AMD que utiliza por defecto por lo que al enganchar la maquina al VirtualBox cambiamos el tipo; Windows XP no trae este controlador por defecto por ello hay que dejarlo dentro de la máquina virtual para después instalarlo.

El tercer paso es copiar/mover los archivos, lanzar el VirtualBox y crear una nueva máquina virtual cuando nos pida el disco le damos el archivo vmdk principal, si esta dividido en múltiples archivos es aquel que no lleva un número. En Settings/Características de la máquina virtual en la pestaña system/sistema activamos  IO APIC y nos aseguramos que el Chipset sea PIIX3. Finalmente en la red/network para la primera controlado abrimos el cuadro de dialogo avanzada/advanced y cambiamos el tipo de adaptador a Intel PRO/1000 MT Desktop.

Arrancamos la máquina virtual, instalamos el driver de la tarjeta de red y luego el VirtualBox Guess Additions y eso es todo.

 

DB &Oracle Fernando José on 25 Apr 2011

Instalación de RAC 11gR2 sobre VirtualBox con SCAN

Actualización! He publicado la segunda parte, la tercera en breve. (25-04-2011)

http://www.laequipa.com/2011/04/25/instalacion-de-rac-11gr2-sobre-virtualbox-con-scan-parte-2/

Estoy preparando una serie de artículos para el blog de la Equipa sobre este tema, si te interesa mirar en este enlace y comenzar a instalar!

http://www.laequipa.com/2011/04/13/instalacion-de-rac-con-scan-en-virtualbox-dia-1/

Saludos

FJA

Oracle Fernando José on 14 Apr 2011

VirtualBox 4.0.4 Interface Web en Linux (vboxweb phpvirtualbox CentOS 5.6)

Partimos de asumir que se tiene un VirtualBox instalado y ejecutando correctamente, también asumimos que se tiene en el mismo servidor Apache y PHP.

Para activar el acceso web en VirtualBox creamos un fichero /etc/default/virtualbox

[root@localhost ~]# cat /etc/default/virtualbox
VBOXWEB_USER=fjandrade

#VBOXWEB_PIDFILE=
VBOXWEB_HOST=127.0.0.1
VBOXWEB_PORT=18083
VBOXWEB_TIMEOUT=0
#VBOXWEB_CHECK_INTERVAL=5
#VBOXWEB_THREADS=100
#VBOXWEB_KEEPALIVE=100
#VBOXWEB_LOGFILE=/var/log/vbox/web
#INSTALL_DIR=/usr/lib/virtualbox
El usuario debe ser el mismo que vamos a emplear para iniciar las máquinas virtuales y tiene que pertenecer al grupo vboxusers, sobre todo tener en cuenta los permisos de archivo al declarar el usuario.
Una vez creado este archivo levantamos el servicio
[root@localhost ~]# /etc/init.d/vboxweb-service start
Starting VirtualBox web service                            [  OK  ]
finalmente descargamos phpvirtualbox de esta dirección http://code.google.com/p/phpvirtualbox/ y descomprimimos su contenido en el directorio del servidor web.
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# ls
phpvirtualbox-4.0-5.zip
[root@localhost html]# unzip phpvirtualbox-4.0-5.zip
[root@localhost html]# ln -s phpvirtualbox-4.0-5 phpvirtualbox
[root@localhost html]# rm phpvirtualbox-4.0-5.zip
Finalmente copiamos y editamos el archivo de configuracion de phpvirtualbox
[root@localhost html]# cd phpvirtualbox
[root@localhost phpvirtualbox]# cp config.php-example config.php
[root@localhost phpvirtualbox]# vi config.php
Modificamos las lineas, con el usuario y la contraseña del sistema operativo que emplearemos principalmente en la gestión de las máquinas virtuales.
/* Username / Password for system user that runs VirtualBox */
var $username = ‘fjandrade’;
var $password = ‘XXXXX’;
Finalmente podremos acceder a la interface web en:
http://servidor/phpvirtualbox
El usuario y contraseña predefinidos son admin/admin.

DB &Oracle Fernando José on 28 Mar 2011

Guia de Instalación Oracle 11gR2 con ASM en VirtualBox

He escrito una pequeña guia de instalación de Oracle 11gR2 con ASM (Oracle Restart /Grid Infraestructure) y Virtualbox 4.04 que se encuentra en este enlace:

http://www.fjandrade.com/Download/Instalacion_Oracle11g_ASM_OUL.pdf

Como fue escrito para la Comunidad Oracle Hispana existen dos foros abiertos con preguntas, si tienen alguna duda puede que ya este respondida allí.

http://comunidadoraclehispana.ning.com/forum/topics/instalando-oracle-virtual-box

http://comunidadoraclehispana.ning.com/forum/topics/instalando-oracle-database-11g

El tutorial requiere unos retoques, espero trabajar en ello pronto.

Saludos y espero que sea de ayuda.

Oracle Fernando José on 08 Dec 2009

Artículo de APEX en “Asterisco Mas”

En “Asterisco Mas” el boletín de la Comunidad Oracle Hispana han publicado un artículo mio de introducción a APEX. Un poco de autobombo no viene mal.

Si les interesa está en la web de la comunidad:

http://comunidadoraclehispana.ning.com/

Slds

FJA

Oracle Fernando José on 23 Nov 2009

Oracle 11g (11.1.0.6.0) problema con OEM CPU al 100% o muy alto

Update!

Esto tiene una solución mas sencilla que la anterior. Simplemente hay que seguir los siguientes pasos:

  • Bajar la consola como el usario oracle con el comando: emctl stop dbconsole.
  • Conectarse a la base de datos con sqplus como el usario SYSMAN y ejecutar el comando: execute MGMT_PAF_UTL.STOP_DAEMON;
  • Conectarse a la base de datos con sqplus como el usario SYSMAN ejecutar el comando: execute MGMT_PAF_UTL.START_DAEMON;
  • Levantamos la consola como el usuario oracle con el comando: emctl start dbconsole.

El primer comentario lo expone claramente, pero muchas personas me preguntan lo mismo, asi que lo documento aquí.

Links:
http://forums.oracle.com/forums/thread.jspa?messageID=2207494&#2207494
http://edin.no-ip.com/content/100-cpu-usage-overhead-running-em-dbconsole-11g-debian-sid

—-> old post:

Si tienes una instalación nueva de 11g el CPU se pone al 100% por un problema con un trabajo de mantenimiento. La query siguiente pone el CPU a tope.

SELECT EXECUTION_ID, STATUS, STATUS_DETAIL
FROM MGMT_JOB_EXEC_SUMMARY
WHERE JOB_ID = :B3 AND TARGET_LIST_INDEX = :B2 AND EXPECTED_START_TIME = :B1

Al parecer un workaround simple es borrar el trabajo PROVISIONING DAEMON de la tabla sysman.mgmt_job. Por lo pronto el bug se presenta sobre entornos con máquinas virtuales.

La solución de los foros de OTN:

bajar el oem ( emctl stop dbconsole)

create table mgmt_job_bad as select * from sysman.mgmt_job where job_name = ‘PROVISIONING DAEMON’;
delete from sysman.mgmt_job where job_name = ‘PROVISIONING DAEMON’;
commit;

subir el oem (emctl start dbconsole)

Por lo pronto este workaround y a esperar el parche.

Oracle Fernando José on 22 Jun 2009

Oracle Instant Client + Ubuntu

Probado en un 9.04 64 bits. Asumo que será similar en otras versiones.

El instant client se descarga de la red de tecnologia de Oracle.

Se necesita libaio para la versión 11, para la versión 10 no es necesario.

apt-get install libaio1

A partir de este punto existen dos posibles formas de instalar el instant client.

1) Transformando los paquetes RPM en DEB con alien.

apt-get install alien

alien oracle-instantclient11.1-basic-11.1.0.7.0-1.i386.rpm
alien oracle-instantclient11.1-devel-11.1.0.7.0-1.i386.rpm
alien oracle-instantclient11.1-sqlplus-11.1.0.7.0-1.i386.rpm

dpkg -i oracle-instantclient11.1-basic_11.1.0.7.0-2_i386.deb oracle-instantclient11.1-devel_11.1.0.7.0-2_i386.deb  oracle-instantclient11.1-sqlplus_11.1.0.7.0-2_i386.deb

2) Descomprimiento los ZIPs y declarando las variables de entorno.

sudo mkdir -p /opt/oracle/
cd /opt/oracle/
sudo unzip instantclient-basic-linux32-11.1.0.7.zip
sudo unzip instantclient-jdbc-linux32-11.1.0.7.zip
sudo unzip instantclient-sdk-linux32-11.1.0.7.zip
sudo unzip instantclient-sqlplus-linux32-11.1.0.7.zip
sudo ln -s /opt/oracle/instantclient_11_1 client
cd /home/oracle/client /opt/oracle/
sudo ln -s  libclntsh.so.11.1 libclntsh.so
sudo ln -s  libocci.so.11.1 libocci.so

export ORACLE_HOME=/opt/oracle/client
export PATH=$ORACLE_HOME/client:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/client:$LD_LIBRARY_PATH
export TNS_ADMIN=<directorio tnsnames.ora>

Para probarlo podemos utilizar el SQLPLUS contra un servidor disponible.

sqlplus <user>/<pass>@<host>:<puerto>/<servicio>

Slds

FJAProbado en un 9.04 64 bits. Asumo que será similar en otras versiones.

El instant client se descarga de la red de tecnologia de Oracle.

Se necesita libaio para la versión 11, para la versión 10 no es necesario.

apt-get install libaio1

A partir de este punto existen dos posibles formas de instalar el instant client.

1) Transformando los paquetes RPM en DEB con alien.

apt-get install alien

alien oracle-instantclient11.1-basic-11.1.0.7.0-1.i386.rpm
alien oracle-instantclient11.1-devel-11.1.0.7.0-1.i386.rpm
alien oracle-instantclient11.1-sqlplus-11.1.0.7.0-1.i386.rpm

dpkg -i oracle-instantclient11.1-basic_11.1.0.7.0-2_i386.deb oracle-instantclient11.1-devel_11.1.0.7.0-2_i386.deb  oracle-instantclient11.1-sqlplus_11.1.0.7.0-2_i386.deb

2) Descomprimiento los ZIPs y declarando las variables de entorno.

sudo mkdir -p /opt/oracle/
cd /opt/oracle/
sudo unzip instantclient-basic-linux32-11.1.0.7.zip
sudo unzip instantclient-jdbc-linux32-11.1.0.7.zip
sudo unzip instantclient-sdk-linux32-11.1.0.7.zip
sudo unzip instantclient-sqlplus-linux32-11.1.0.7.zip
sudo ln -s /opt/oracle/instantclient_11_1 client
cd /home/oracle/client
sudo ln -s  libclntsh.so.11.1 libclntsh.s
sudo ln -s  libocci.so.11.1 libocci.so

export ORACLE_HOME=/opt/oracle/client
export PATH=$ORACLE_HOME/client:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/client:$LD_LIBRARY_PATH
export TNS_ADMIN=<directorio tnsnames.ora>

Para probarlo podemos utilizar el SQLPLUS contra un servidor disponible.

sqlplus <user>/<pass>@<host>:<puerto>/<servicio>

Slds

FJA

DB &Oracle Fernando José on 08 Feb 2009

ApEx, OracleXe en Servidor Dedicado ( Desarrollo Oracle Económico?)

Versión — 0001

apex_logo

Estaba buscando una forma económica de desarrollar con Oracle, probé con Amazon Web Services (AWS) pero salía la cuenta muy alta ( alrededor de 100 USD mes ).  Ahora encontré un servidor dedicado por 20 EUR al mes ( económico ) en la gama baja de ovh.es, completamos el cuadro con Oracle XE y Apex.

Limitaciones: La base de datos XE está limitada a un procesador y 4GB que es más que suficiente para una aplicación orientada a una PYME. El servidor de entrada de ovh.es es un Celeron con 1GB en RAM, nuevamente suficiente para una PYME.

Resumen: Contratamos un servidor en Kemsirve con Ubuntu ( gama baja de ovh.es ),  instalamos Oracle XE para Ubuntu( Base de datos ), y luego instalamos Oracle ApEx ( Entorno RAD para Oracle ).

Tutorial:

Después de contratar un servidor en Kemsirve, llegará un mail con instrucciones para conectarse como root al servidor contratado. Para conectarse al servidor se puede utilizar putty si se está en windows o ssh directamente si se está en un servidor linux. Una vez conectado como root es bueno configurar unas pocas reglas de iptables ya que el servidor Ubunto no tendrá un muro de fuego por defecto, especialmente para no exponer la base de datos directamente al internet ( muy mala idea ).

iptables -A INPUT -i eth0 -p tcp –dport 22 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp –dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp –dport 8080 -j ACCEPT
iptables -A INPUT -i eth0 -p icmp -j ACCEPT
iptables -A INPUT -i eth0 -m state –state ESTABLISHED,RELATED -j ACCEPT
iptables -I INPUT 1 -i lo -j ACCEPT
iptables -I INPUT 5 -m limit –limit 5/min -j LOG –log-prefix “iptables denied: ” –log-level 7
iptables -A INPUT -i eth0 -j DROP

Las anteriores son reglas que permiten el acceso a los puertos 22,80 y 8080 (ssh, 80 y 8080) , a hacer ping y bloquean todo el resto del tráfico.

Una vez que esto está listo se puede instalar Oracle XE, como root editamos el archivo /etc/apt/sources.list ( se puede usar el comando nano si no se sabe usar en vi ) y agregamos esto al final:

#oracle repos
 deb http://oss.oracle.com/debian unstable main non-free

Esto incluye el repositorio de Oracle en la lista de aquellos que se puede utilizar para instalar paquetes. Luego instalamos el Oracle XE con los siguientes comandos como root ( el servidor de Kemsirve usar root, si es un Ubuntu se puede usar el comando sudo).

#>wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle  -O- | sudo apt-key add -
#>apt-get update
#>apt-get install oracle-xe

Después de unos minutos está instalado el software pero no tenemos la base todavia, para  instalar y configurar la base como root ponermos el comando:

#>/etc/init.d/oracle-xe configure

Durante el procesos de configuración se nos solicitará la clave para los usuarios administradores de la base SYS y SYSTEM ( recordarla! ), luego nos preguntará si queremos iniciar el servicio de la base de datos y listener cuando el servidor se arranque. El proceso crear la una base de datos, configura el listener y establece los archivos de necesarios para iniciar los servicios ( ya se que no hay servicios en los debian!).

Oracle XE ya viene con una versión de ApEx pero es una versión anterior para actualizarla debemos descargarla de la red de tecnología de oracle (otn.oracle.com)  y tener una cuenta activa, el registro es gratuito pero es un paso indispensable para continuar. Una vez que se tenga la cuenta podemos proceder con la descarga desde el servidor utilizando lynx ( recurso obtenido de la página web del Pythian Group ), asi como oracle:

#>su – oracle – para pasar a ser el usuario oracle
oracle> cd   — para regresar al home de oracle
~oracle> rm .lynx_cookies — en caso de existir este archivo
~oracle> vi  lynx.cfg –se puede utilizar nano

Añadimos las siguiente líneas archivo al editarlo

SET_COOKIES:TRUE
PERSISTENT_COOKIES:TRUE
ACCEPT_ALL_COOKIES:TRUE
COOKIE_FILE:~/.lynx_cookies
INCLUDE:/etc/lynx.cfg

Luego llamamos a lynx ( navegador web en consola (que locura!)).

~oracle> lynx -cfg=./lynx.cfg http://download.oracle.com/otn/java/appexpress/apex_3.1.2.zip

Se nos presentará una pantalla para introducir el usuario y contraseña de la red tecnológica de oracle, luego aplastamos botón derecho o intro para descargar el archivo en el mismo directorio en el cual llamamos a la aplicación. Tomá unos pocos minutos es una descarga de alrededor de 90MB.

El instalador de Oracle para debian y todos sus primos está bien, sin embargo no declara las variables de entorno para poder usar la base de datos XE, es por ello que creamos  como oracle ( ojo seguimos como oracle ) el archivo .bash_profile.

~oracle> vi .bash profile– en caso de existir este archivo

Agregamos estas líneas:

#!/bin/bash
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export ORACLE_HOME
ORACLE_SID=XE
export ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin
export PATH

Luego cargamos estas variables de entorno que nos permitirán usar el software de la base de datos.

~oracle> . .bash_profile 
–para cargar el perfil en la sesión actual, no necesario si se realizan otras conexiones.
~oracle> env | grep ORACLE 
–para valirdar que el ORACLE_HOME y ORACLE_SID esten presentes

~oracle> env | grep PATH
–para valirdar que el PATH apunte a ORACLE_HOME/bin

Una vez establecidas estas variables se debe descomprimir el software que descargamos en algún lugar, yo lo pongo junto a los binarios de la base:

~oracle> cd    –para regresar al home de oracle
>>oracle>mv apex_3.1.2.zip ./app/oracle/product/
>>oracle>cd app/oracle/product/
>>oracle>unzip apex_3.1.2.zip

esto crea un directorio que se llama “apex”.

>>oracle>cd apex
>>oracle>sqplus sys@xe as sysdba – para ingresar a la base como sys
—> ingresamos el password
SQL> @apexins SYSAUX SYSAUX TEMP /i/ –este comando instala apex

Después de unos 30 minutos el proceso debe terminar sin errores, inmediatamente sale al sistema para debemos configurar todavia la cuenta de administrador y el puerto del ApEx, para ello como oracle:

~oracle>sqplus sys@xe as sysdba
– para ingresar a la base como sys
SQL>@apxchpwd
– para cambiar la password del usuario “admin” de apex
SQL>@apex_epg_config  /usr/lib/oracle/xe/app/oracle/product
– para configurar el plsql gateway (la web)
SQL>ALTER USER ANONYMOUS ACCOUNT UNLOCK;
–desbloquea el usuario anónimo (para la web)

SQL>@apxldimg.sql /usr/lib/oracle/xe/app/oracle/product
–para actualizar la imágenes de ApEx
SQL> SELECT DBMS_XDB.GETHTTPPORT FROM DUAL;
–para validar en que puerto está configurado el gateway ( tiene que ser 8080)
.
SQL>EXEC DBMS_XDB.SETHTTPPORT(8080);
–para establecer el puerto (en caso de que no sea correcto).

Todos estos pasos se encuentran en la guía de instalación de Oracle ApEx aunque un poco más dispersos. Para ingresar a apex ponemos la dirección del servidor http://miservidor:8080/apex , para ingresar a la consola de administraciónhttp://miservidor:8080/apex/apex_admin.

Ahora bien con esto termino la versión 00001 de esta guía, para poder realizar una aplicación se ingresa a la consola con administrador se crea un workspace de desarrrollo se hace logout y se ingresa con el usuario de desarrollo y el nombre del workspace ( hoy ya me cansé pongo pantallas de eso luego).

Como podrá intuir cualquier paranoico ( yo soy uno ) esta configuración no es extremadamente segura ( depende de que tan seguro sea el oracle ), se puede utilizar un servidor web para redireccionar la información de ApEx eso también espero descubrir como.

Finalmente el producto no está completo sin poder generar PDFs para descargar documentos imprimibles, sé que eso se puede realizar redireccionando datos a un Tomcat y utilizando unas cuantos servlets, ya que la solución de Oracle para ello es de pago, eso también espero adjuntarlo a este tutorial.

Espero que sea de utilidad.

Slds

FJA

Oracle &Personal Fernando José on 17 Dec 2008

Redes sociales, comunidades alrededor de Oracle

Bueno esto de estar en varias redes sociales al mismo tiempo es un lio terrible. Redes sociales orientadas al Castellano ( Español ) y (AND)  Oracle no exisitian que conociera y hace poco me invitaron a una en NING, es muy parecida a Oracle Community que la fundo hace no mucho Eddie Awad y ya tiene 3200 miembros. Estas redes sociales estan fuera de Oracle y son esfuerzos de particulares, Oracle quizo hacer su propia Web 2.0 con Oracle MIX y un wiki de Oracle .

Creo que las redes sociales tiene un problema fundamental cuando atacan un tópico tan amplio como Oracle que puede tener muchas derivaciones. Al final la dispersión de temas hace que sea mas el ruido que el beneficio que le puedes sacar a una red social, eso me pasa con MIX y el WIKI ( que de wiki tiene poco ).

La red de Oracle Community tiene el agravante que ingresa gente muy diversa y muchos de ellos están muy  nuevos en temas de redes sociales lo que hace que la discusión baje muchisimo de nivel. Además que llegas a no tener ninguna relación con nadie, es como ir de turista a cualquier lugar lleno de otros turistas al final nadie se entera de nada.

Creo que la red de Communidada Oracle Hispana va por un buen camino, al menos esta más focalizada. Va a un mercado que es relativamente común ( Latinoamerica – España ) permitiendo que conozcas gente con la cual realizar negocios, contactos o compartir información y conocimiento … que es para lo que una red social debe servir.  Veo que tiene la verticalidad suficiente, ahora sería interesante que salga a delante que ese ya es otro tema.

Buscando otras comunidades encontré grupos en lengua castellana tanto en yahoo como en google, muchos orientados a la certificiacion, otros a desarrollo y unos pocos a DBA.  Voy a inscribirme en uno a ver si me aceptan =).

Bueno me queda invitarlos a Oracle Community a ver si se puede organizar algo interesante por esa red, esta muy orientado al Latinoamericano-Argentino (creo que el Latinoamericano se debe reconocer como lengua derivada del Castellano ) pero no creo que nadie se ofenda.


Ver mi página en Comunidad Oracle Hispana

También estoy en Oracle Community

View my page on Oracle Community

Y en Xing, y en LinkedIn y en ….
¿ya comente que estar en las redes sociales es un lio no?

DB &Oracle Fernando José on 28 Oct 2008

Listener lento, conexiones lentas (OUL 4/5, VMware)

Bueno este es solo un recordatorio.

Si las conexiones se ponen muy lentas, y el listener demora mucho en cualquier acción lo más seguro es que sea un problema de resolución de nombre por DNS. En los linux verificar que el nameserver dentro del /etc/resolv.conf apunta a una dirección IP válida.

FJA

Next Page »