viernes, 18 de abril de 2014

Como instalar Oracle 11gR2 en Ubuntu 11.10 y 12.04


Bueno, la instalación de Oracle 11gR2 es un verdadero lío en un sistema tan moderno como Ubuntu, desafortunadamente Oracle no actualiza tan rápido sus dependencias de paquetes, ya que se mantiene dentro de los estándares de los sistemas comerciales. Pero es posible adecuar algunos atributos de compilación para poder instalarlo. Aquí se los dejo:
Ejecutar desde terminal:
Crear usuario y grupos:
$ sudo groupadd nobody
$ sudo groupadd dba
$ sudo useradd -g dba -G dba,sudo oracle -d /home/oracle -s /bin/bash
$ sudo passwd oracle
$ sudo mkdir /home/oracle
$ sudo mkdir /opt/oracle
$ sudo chown oracle:dba /home/oracle /opt/oracle


Crear perfil de usuario:
$ sudo -u oracle vi /home/oracle/.profile
==== ARCHIVO ====
export ORACLE_BASE=/opt/oracle/app/product/11.2.0
export ORACLE_HOME=$ORACLE_BASE/db_1
export PATH=$ORACLE_HOME/bin:$PATH
=================

Crear directorios para Oracle:
$ sudo -u oracle mkdir -p /opt/oracle/app/product/11.2.0/db_1
Crear oraInst.loc:
$ sudo vi /etc/oraInst.loc
==== ARCHIVO ====
inventory_loc=/opt/oracle/oraInventory
inst_group=dba
=================

Configurar parámetros de sistema operativo:
$ sudo vi /etc/security/limits.conf
==== ARCHIVO ====
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
=================

$ sudo vi /etc/sysctl.conf
==== ARCHIVO ====
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
=================
$ sudo sysctl -p
Instalar paquetes adicionales y trucos para Ubuntu:
$ sudo apt-get install libstdc++5 libelf1 libelf-dev libaio1 libaio-dev sysstat elfutils lesstif2 libmotif4 libmotif-dev libtool numactl expat make unixodbc unixodbc-dev make gcc
$ sudo ln -s /usr/bin/awk /bin/awk
$ sudo ln -s /usr/bin/basename /bin/basename
$ sudo ln -s /usr/lib/x86_64-linux-gnu /usr/lib64
$ sudo ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/libgcc_s.so.1

Iniciar el instalador de Oracle:
$ xhost +
$ su - oracle
$ /software/Disk1/runInstaller

Una vez iniciado el instalador, sigue los pasos Windows (siguiente, siguiente, siguiente…) y en el momento de realizar el ligado de las librerías aparecerá un error sobre el archivo “ins_emagent.mk. No te espantes, antes de reintentar, realiza las siguientes modificaciones.
$ cd $ORACLE_HOME
$ vi sysman/lib/ins_emagent.mk
remplaza las líneas:
$(SYSMANBIN)emdctl:
$(MK_EMAGENT_NMECTL)
por:
$(SYSMANBIN)emdctl:
$(MK_EMAGENT_NMECTL) -lnnz11
$ vi rdbms/lib/env_rdbms.mk
remplaza las líneas:
KFED_LINKLINE=$(LINK) $(S0MAIN) $(SSKFEDED) $(SKFEDPT) \
por:
KFED_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFEDED) $(SKFEDPT) \
remplaza las líneas:
KFOD_LINKLINE=$(LINK) $(S0MAIN) $(SSKFODED) $(SKFODPT) $(KFODOBJ) \
por:
KFOD_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFODED) $(SKFODPT) $(KFODOBJ) \
remplaza las líneas:
KFNDG_LINKLINE=$(LINK) $(S0MAIN) $(SSKFNDGED) $(SKFNDGPT) $(KFNDGOBJ) \
por:
KFNDG_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFNDGED) $(SKFNDGPT) $(KFNDGOBJ) \
remplaza las líneas:
AMDU_LINKLINE=$(LINK) $(S0MAIN) $(SSKFMUED) $(SKFMUPT) \
por:
AMDU_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFMUED) $(SKFMUPT) \
remplaza las líneas:
ORACLE_KERNEL_LIBS=$(LLIBSKGTR) $(LLIBPERFSRV) $(NAETTOBJS) $(CONFIG)\
$(SPOBJS) $(LLIBSERVER) $(LLIBODM) $(LLIBSAGE) \
por:
ORACLE_KERNEL_LIBS=$(LLIBSKGTR) $(LLIBPERFSRV) $(NAETTOBJS) $(CONFIG)\
$(SPOBJS) -Wl,--no-as-needed $(LLIBSERVER) $(LLIBODM) $(LLIBSAGE) \
$ vi bin/genorasdksh
remplaza las líneas:
$LD $LD_RUNTIME $LD_OPT $LD_OUT $LD_SELF_CONTAINED $BASE_LIB \
por:
$LD $LD_RUNTIME -Wl,--no-as-needed $LD_OPT $LD_OUT $LD_SELF_CONTAINED $BASE_LIB \
$ vi srvm/lib/ins_srvm.mk
remplaza las líneas:
GETCRSHOME_LINKLINE=$(LINK) $(LDPATHFLAG)$(RDBMSLIB) $(CDEBUG) $(OPT) $(GETCRSHOME_OBJ1) \
$(OCRLIBS_DEFAULT) $(LLIBCLNTSH) $(LINKLDLIBS)
por:
GETCRSHOME_LINKLINE=$(LINK) $(LDPATHFLAG)$(RDBMSLIB) $(CDEBUG) $(OPT) $(GETCRSHOME_OBJ1) \
-Wl,--no-as-needed $(OCRLIBS_DEFAULT) $(LLIBCLNTSH) $(LINKLDLIBS)
$ vi network/lib/env_network.mk
remplaza las líneas:
TNSLSNR_LINKLINE=$(LINK) $(TNSLSNR_OFILES) $(LINKTTLIBS) $(LLIBONS) \
por:
TNSLSNR_LINKLINE=$(LINK) $(TNSLSNR_OFILES) -Wl,--no-as-needed $(LINKTTLIBS) $(LLIBONS) \

Una vez realizadas estas modificaciones reintentas desde el instalador y debe terminar todo bien!!!

No hay comentarios:

Publicar un comentario