(traducción libre de este articulo )
Paso de explicar quienes son oracle y por que los pongo aqui. Como que tengo que currar con el, pues mejor tener una guia. Uno de los productos de oracle es Oracle Database 10g Express Edition. La etiqueta “Express Edition” es para el grupo de productos destinados al desarrollo y a la educación. Este paquete es un paquete TOTALMENTE FUNCIONAL. Porque las ventajas de este paquete es que puedes aprender y experimentar. En contrapartida tiene ciertas limitaciones:
A la hora de la verdad, esas limitaciones no son fatales en la mayoría de los casos. Especialmente para aplicaciones web ligeras. Para usos de desarrollo, pruebas y de aprendizaje es perfecto. Por eso el de este manual de como instalarlo:
deb http://oss.oracle.com/debian/ unstable main non-free
apt-get -d libaio oracle-xe
apt-get install libaio oracle-xe
dpkg -i libaio_0.3.104-1_i386.deb dpkg -i oracle-xe_10.2.0.1-1.1_i386.deb
apt-get install libc6-i386 dpkg -i –force-architecture libaio_0.3.104-1_i386.deb dpkg -i –force-architecture oracle-xe_10.2.0.1-1.1_i386.deb
rpm -ivh oracle-xe-10.2.0.1-1.0.i386.rpm
Ilias me advirtio sobre los problemas con los listeners en algunas distribuciones(RHEL 4, Ubuntu AMD64 y puede que mas) debido a los errores de permisos en /var/tmp/.oracle ( y/o en /tmp/oracle) . puedes echarle un vistazo a esta dirección para mas información. Ahi proponen 2 modos para solucionarlo:
chown oracle:dba /var/tmp/.oracle /tmp/.oracle
chmod 1777 /var/tmp/.oracle /tmp/.oracle
Bueno, probablemente tendrás que reiniciar el listener:
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/lsnrctl stop /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/lsnrctl start
La configuración ahora es independiente de la distribución. Hasta que no hagamos esta configuración el servidor no estará operativo. Cuando empiece, abriará 2 puertos TCP , uno para la extremadamente agradable interfaz web y otro para la comunicación del servidor consigo mismo (Oyente de la base de datos). No hace falta decir que el oyente de la base de datos está activo para todas las IPs. Aunque la interfaz web “Application Express” oye sólo en el 127.0.0.1. Por lo que es inaccesible remotamente. He encontrado que esto lo puedes cambier despuest usando la interfaz web, pero hasta entonces usaba un “proggy” llamado “redir” (el paquete Debian tiene el mismo nombre) que usaba para redirigir todas las peticiones al puerto 8080 a la ip 127.0.0.1 despues de lo cual ya podía administrarlo remotamente
/etc/init.d/oracle-xe configure
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
o bien simplement añadir la siguiente linea:
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
echo '/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib' >> /etc/ld.so.conf /sbin/ldconfig
http://127.0.0.1/apex/ - Se puede acceder a traves de la consola SQL*Plus que se suele encontrar en:
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/sqlplus
y escribir para permitir acceso remoto a la interfaz web:
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
NOTA: El SID de la base instalada por defecto es “XE”.
Y hasta aqui todo!
Si eres DEBianita bajo /etc/init.d/ se te ha creado un script oracle-xe que te dará muchas opciones
{start|stop|restart|force-reload|configure|status|enable|disable}
(No conozco el entorno RPM)
Hasta arreglar el problema con los listeners la única manera de arrancar Oracle una vez parado era:
/etc/init.d/oracle-xe force-reload