Upload
voxuyen
View
218
Download
8
Embed Size (px)
Citation preview
Instalación Oracle 11g EE en Debian Lenny
1. Comprobar la configuración hardware.• 1 GB de ram --> grep MemTotal /proc/meminfo • 2 GB de swap --> grep SwapTotal /proc/meminfo • Versión mínima del kernel 2.6.18 --> uname -r • Memoria compartida recomendable: 1GB --> df -kh /dev/shm/ podría dar el error
ORA-00845
2. Comprobar la configuración de red.• En el archivo /etc/localhost debe estar la linea:
➢ localhost.localdomain• En el archivo /etc/hosts debe estar la linea:
➢ 127.0.0.1 localhost.localdomain localhost
3. Instalar las dependencias para la instalación de oracle.• aptitude install alien cpp-3.4 debhelper gawk gcc-3.4 gcc-3.4-base gettext
html2text intltool-debian ksh lesstif2 libaio-dev libaio1 libbeecrypt6 libdb4.6 libelf-dev libelf1 libltdl3 libltdl3-dev libodbcinstq1c2 libqt4-core libqt4-gui librpm4.4 libsqlite3-0 libstdc++5 libstdc++6-4.3-dev lsb lsb-core lsb-cxx lsb-desktop lsb-graphics lsb-qt4 odbcinst1debian1 pax po-debconf rpm sysstat unixodbc unixodbc-dev
• ademas tendremos que modificar los siguientes paquetes con alien -k:➢ compat-glibc_2.3.4-3.26_i386.rpm➢ compat-libstdc++_7.3-2.96.118_i386.rpm➢ cvuqdisk_1.0.7-1_i386.rpm➢ elfutils-libelf-devel_0.97.1-5_i386.rpm➢ glibc-devel_2.3.4-2_i386.rpm➢ libaio_0.3.106-3.2_i386.rpm➢ libstdc++_3.4.6-11_i386.rpm➢ make_3.81-1.1_i386.rpm➢ unixodbc_2.2.11-7.1_i386.rpm
4. Crear los grupos y los usuarios necesarios.• addgroup --system oinstall • addgroup --system dba• useradd -r -g oinstall -G dba -m -s /bin/bash -d /var/lib/oracle oracle • passwd oracle (e introducimos la nueva contraseña)
5. Configurar los parámetros del kernel.• Editamos el fichero /etc/sysctl.conf y añadimos las lineas:
➢ kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000net.core.rmem_default = 4194304net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 262144
➢ Y ejecutamos sysctl -p para volver cargar los parametros del kernel.
6. Editar los parámetros de la shell para el usuario oracle.• Modificamos el fichero /etc/security/limits.conf y añadimos:
➢ oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536
• Modificamos /etc/pam.d/su y descomentamos:➢ session required pam_limits.so
• Modificamos /etc/pam.d/login y añadimos:➢ session required /lib/security/pam_limits.so
• Modificamos /etc/profile y añadimos:➢ if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536
else ulimit -u 16384 -n 65536
fifi
7. Crear los directorios y darles los permisos necesarios:• mkdir -p /u01/app/oracle
mkdir -p /u02/oradatachown -R oracle:oinstall /u01 /u02chmod -R 775 /u01 /u02
8. Configuración de entorno del usuario oracle:• Modificamos el fichero /var/lib/oracle/.profile. Se va a crear una base de datos
en AL32UTF8 si fuera en ASCII seria:US7ASCII➢ umask 022
export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.1.0/db_1export NLS_LANG=.AL32UTF8unset TNS_ADMINif [ -d "$ORACLE_HOME/bin" ]; then PATH="$ORACLE_HOME/bin:$PATH"fi
9. Configurar un falso instalador de oracle.• Como oracle no soporta oficialmente debian sino Red Hat hay
que crear enlaces simbolicos:➢ ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpmln -s /usr/bin/basename /bin/basenameln -s /etc /etc/rc.d
• Tambien nos enmascaramos como Red Hat:➢ echo 'Red Hat Linux release 5' > /etc/redhat-release
10. Ultimo paso.• Copiamos el fichero de oracle al directorio principal de el
usuario oracle.• Y nos vamos a :cd /var/lib/oracle/database y ejecutamos
➢ ./runInstaller
11. Y realizamos la instalacion dependiendo de nuestras preferencias.
Modificamos las variables del sistema con:
export ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1export PATH=$PATH:/u01/app/oracle/product/11.1.0/db_1/bin/export ORACLE_SID=orclexport LD_LIBRARY_PATH=/u01/app/oracle/product/11.1.0/db_1/lib/
Creamos un script como este:
#!/bin/bash# /etc/init.d/oracledb# Run-level Startup script for the Oracle Listener and Instances# It relies on the information on /etc/oratab
export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1export ORACLE_OWNR=oracleexport PATH=$PATH:$ORACLE_HOME/bin
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]then echo "Oracle startup: cannot start" exit 1fi
case "$1" in start) # Oracle listener and instance startup echo -n "Starting Oracle: " su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl start" su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbstart" touch /var/lock/oracle echo "OK" ;; stop) # Oracle listener and instance shutdown echo -n "Shutdown Oracle: " su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop" su $ORACLE_OWNR -c $ORACLE_HOME/bin/dbshut rm -f /var/lock/oracle echo "OK" ;; reload|restart) $0 stop $0 start ;; *) echo "Usage: `basename $0` start|stop|restart|reload" exit 1esac
exit 0