Tutorial para instalar Oracle en Linux

No es el texto definitivo (es una verdadera lata instalarlo).

Creo que servira mas si escribo el historial de la instalacion, asi el que lo lea, no cometera los mismos errores.

Estoy tratando de instalar Oracle 11g en mi computadora que tiene la siguiente configuracion:

  1. Procesador AMD TurionTM II Dual-Core Mobile M500.
  2. RAM 4 gb.
  3. Disco duro Sata con 500 gb.
  4. Sistema operativo Ubuntu 10.
  5. VirtualBox 4.0.2

El proposito de instalar Oracle es poder recordar SQL y PL/SQL, tambien crear una instancia de linux lo mas basica posible, en donde exista solamente lo minimo necesario para ejecutar Oracle, por lo tanto se va a instalar en la maquina virtual:

  1. Ubuntu 11 server 64 bits.
  2. Oracle 11g v2 64 bits.
  3. XFCE 4.
  4. Gnome Terminal.
  5. GEdit.

La maquina virtual se configurara con 1.5 gb de RAM y 16 gb en disco duro.

Observaciones:
Esta es una lista de los errores que ha marcado el instalador, se indica en que numero de instalacion lo marco:

  1. Primera instalacion:
    Ya se trato de instalar Oracle en una maquina virtual configurada con 8 gb de disco duro, pero el instalador mando un error indicando que necesitaba al menos 4 gb libres, tambien marco un error cuando asigne 1 gb de memoria ram.
  2. Segunda instalacion:
    Es requerimiento para la instalacion de Oracle tener la particion swap con al menos 2 gb. Al hacer la segunda instalacion se creo una particion swap con 2gb., pero el instalador marco una advertencia que la particion swap tenia menos de lo requerido(probablemente otros procesos estaban utilizando la swap), asi que recomiendo que se cree la swap con mas de 2gb. En las proximas instalaciones se hara con 3gb.
  3. Tercera instalacion:
    Al momento de instalar Oracle, el instalador marca un error ya que no localiza las librerias para compilar, por ejemplo el make. La version que pide es la 3.80 y la que tiene instalado el sistema operativo es la version 3.81.

Se muestran las opciones de configuracion para VirtualBox, se mencionan algunas observaciones al calce:


Es importante seleccionar la opcion "Use host I/O cache"


Se configura asi con el fin que la maquina virtual trabaje en la misma red que el anfitrion. Si buscan en el ruteador, encontraran que se a asignado un numero ip a la maquina virtual.

Este procedimiento no funciona todavia, hay que buscar la solucion:

Ejecuta los siguientes pasos usando la cuenta root:

1. Crear el usuario y grupo de oracle:
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/groupadd nobody
/usr/sbin/useradd -m -g oinstall -G dba -p passwd -d /home/oracle oracle

2. Creamos ciertos directorios y le asignamos permisos
mkdir -p /home/oracle/app/oracle
mkdir -p /home/oracle/oradata
chown -R oracle:oinstall /home/oracle/
chmod -R 775 /home/oracle/

3. Parámetros del kernel
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
se agregan en el archivo /etc/sysctl.conf

Para verificar que configuracion tiene el SO ejecuta:
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range

Para aplicar los cambios ejecuta /sbin/sysctl -p

4. Edita el fichero /etc/security/limits.conf agregando:
oracle soft nproc 2047
oracle hard nproc 16384
oracle hard nofile 65536
oracle soft nofile 1024

5. Agrega estas lineas a /etc/profile
 

6. Ejecuta la siguiente orden para instalar los paquetes:
apt-get install build-essential ia32-libs libc6-dev-i386 libc6-dev libaio-dev expat pdksh unixodbc sysstat libaio1 elfutils build-essential libaio1 libaio-dev libtool expat alien ksh pdksh unixODBC unixODBC-dev sysstat elfutils libelf-dev binutil

apt-get install libmotif4

(Creo que el error de la tercera instalacion se crea en este paso, ya que el instalador no localiza las librerias)

7. Se crean los siguientes enlaces para que el instalador de Oracle localice los archivos:
ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename
ln -s /etc /etc/rc.d

8. Para evitar problemas con las versiones, ejecuta las siguientes ordenes:
cd /tmp
wget
dpkg-deb -x libstdc++5_3.3.6-17ubuntu1_amd64.deb ia64-libs
cp ia64-libs/usr/lib/libstdc++.so.5.0.7 /usr/lib64/
cd /usr/lib64/
ln -s libstdc++.so.5.0.7 libstdc++.so.5

cd /tmp
wget
dpkg-deb -x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
ln -s libstdc++.so.5.0.7 libstdc++.so.5

Si no se localizan las librerias, bajalas de estos links:

Cierra la cuenta root y abre la cuenta oracle y ejecuta lo siguiente:

1. Agrega estas lineas en el .bash_profile
ORACLE_BASE=/home/oracle/ORACLE
ORACLE_SID=test
export ORACLE_BASE ORACLE_SID
unset ORACLE_HOME
unset TNS_ADMIN
umask 022

2. Descomprime linux.x64_11gR2_database_1of2.zip y linux.x64_11gR2_database_2of2.zip y despues ejecuta:

./runInstaller -ignoreSysPrereqs

AdjuntoTamaño
Display.png43.45 KB
general.png42.11 KB
Network.png41.26 KB
Storage.png44.86 KB
System.png58.44 KB

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de neko069

Independientemente de que tu

Independientemente de que tu tema no tiene que ver NADA con Java o con la JVM ...

La instalación de la base de datos da igual en una máquina virtual (guest) o máquina física(host).

Si te pide requerimientos mínimos, es independiente de que sea máquina virtual o no; podrías ver los requerimientos de Oracle express Edition.
Ubuntu Server instalación básica? no lo creo, mejor instálate un debian net installer, sin ambiente gráfico, éso sí es básico.
Para editores de texto en modo consola, debian ya trae vi, o pico, con cualquiera de ésos dos la armas.

Imagen de beto.bateria

Neko069:Escribi bajo que

Neko069:

Escribi bajo que condiciones se instalara el Oracle en un caracter informativo, con el fin de que sirva de guia a otra persona y compare los requerimientos minimos que debe tener.

Obviamente la instalacion que voy a hacer tiene ciertos requerimiento, y los menciono en lo que ya escribi. Ademas, despues de explicar la instalacion, pienso escribir como se conecta a la base de datos con java.

El gedit me gusta usarlo por practico.

Xiale con tus comentarios... :P

Imagen de neko069

Comentarios

Si hice los comentarios que hice, fué porque no especificaste nada, si querías opinión, si es un tutorial, guía, pregunta, si estaba abierto a sugerencias o algo por el estilo, el título tampoco lo especifica, y como lo único relevante fué lo del error que te había aparecido, pues por éso me animé a comentar.

Xiale con tus comentarios... :P

Perdone usted no quise herir susceptibilidades, no vuelvo a interrumpir sus "tutoriales".

Imagen de beto.bateria

Estas en lo correcto con

Estas en lo correcto con respecto al objetivo del documento.
No pense que te tomaras tan en serio el comentario.

Imagen de Jose Manuel

Gentoo rifa!

Básico es instalarse Gentoo con un stage 1 o 2, el stage 3 es para novatos XD , lo demás son chorradas y nano es el que rifa jajaja. El problema con el texto es que muchas veces no sabes como lo quiere decir la otra persona. Por ejemplo, la ultima linea del texto de @neko069, bien puede ser sarcástica, o totalmente seria. No se sabe, un smile puede hacer la diferencia. Example;

Perdone usted no quise herir susceptibilidades, no vuelvo a interrumpir sus "tutoriales" >_<

Si se nota la diferencia, verdá ;)
Y pues bueno, muchas veces hay temas interesantes que no se pueden postear en la comunidad solo porque no son sobre Java...

Imagen de Sr. Negativo

Post sobre Java o la JVM ...

Y pues bueno, muchas veces hay temas interesantes que no se pueden postear en la comunidad solo porque no son sobre Java...

Yo he escrito post que no necesariamente tienen que ver con Java, pero si de programación ...

A mi me parecen buenos estos post, aprendes algo nuevo. A veces cuando tienes un problema y no hallas solución es bueno preguntar ,,, y lo mejor es que esto le puede servir a alguien más que pase por lo mismo.