lunes, 3 de septiembre de 2007

Openwebmail Instalacion / Configuracion

Un producto bastante serio para ofrecer servicios de Webmail. Openwebmail fácil de instalar y administrar.
Instalación de Openwebmail en Fedora Core 5 y Postfix como MTA.

Comenzamos la instalación suponiendo que tenemos el servidor Linux-Apache-Mysql-Php-Python-Perl andando:

Requisitios:
Openwebmail esta escrito en perl por lo que necesita las siguientes libreriras:

perl-CGI
perl-Compress-Zlib
perl-Text-Iconv
perl-suidperl

INSTALACION.-

1.- Bajar del sitio oficial de openwebmail:

http://openwebmail.org/openwebmail/download/release/

2.- Se recomienda instalar en: /var/www

cd /var/www
tar xvfz openwebmail-XXX.tar.gz

crea un subdirectorio en: /var/www/data/openwebmail

mover la carpeta data/openwebmail a /var/www/html:
mv /var/www/data/openwebmail /var/www/html
o bien crear un link simbólico en /var/www/html:
ln -s /var/www/data/ /var/www/html/data

3.- Realizar las siguientes modificaciónes en el archivo dbm.con
cuya ubicacion esta en: /var/www/cgi-bin/openwebmail/etc
dbm_ext .db
dbmopen_ext none
dbmopen_haslock no

4.- Ejecutar:
/var/www/cgi-bin/openwebmail/openwebmail-tool.pl --init

Crea el mapa de tablas que openwebmail usa para su funcionamiento.
Configuraciones y seteos en openwebmail.conf cuya ubicacion esta en:

/var/www/cgi-bin/openwebmail/etc

En caso de tener algún problema o si esta usando alguna distro muy
particular, lea los Readme's que vienen con el producto.



miércoles, 29 de agosto de 2007

Cambiando el Set de Caracteres en la base de datos Oracle

Para cambiar el set de caracteres en la base de datos, es necesario tomar en cuenta algo muy importante: Unicamente podemos cambiar de acuerdo a un orden (subset) que oracle tiene, por ejemplo se puede cambiar de US7ASCII a WE8ISO8859P1 pero no al revés. Si hacemos esta prueba nos da un ora-12712: "new character set must be a superset of old character set"
Si es asi, se debe re-instalar la base de datos.

Con esa recomendación aqui va un ejemplo:

sql> shutdown immediate;


sql> startup mount;
sql> alter system enable restricted session;
sql> alter system set job_queue_processes=0;
sql> alter database open;
sql> alter database character set WE8ISO8859P1; (tambien puede ser "national character set")
sql> shutdown immediate;
sql> startup;

viernes, 10 de agosto de 2007

Oracle: Import/Export de datos desde Linux a Windows y Viceversa

Las utilidades imp / exp que vienen con Oracle, nos dan la posibilidad de realizar backup lógicos en caliente.
Un problema muy frecuente en esta tarea se da cuando tratamos de subir un archivo dmp (exportado en linux) a windows o viceversa.
Inclusive dentro la misma plataforma es dificultoso subir de una versión de oracle a otra.

Una solución, extrayendo de libros y algunas experiencias, es:
a.- suponemos que tenemos dos versiones de oracle: 1 y 2
b.- hago el export de la version 1 con el programa exp que viene en esta versión.
c.- hago el import a la version 2 con el programa imp que viene con la versión 1.

Otra solución y la que dá mejores resultados:
Misma situación y aumentando que tenemos distintas plataformas:
a.- suponemos que tenemos version 1 en linux y version 2 en windows.
b.- desde oracle version 2 en windows creamos dos conexiónes con el net configuration,
una al oracle version 1 en linux, la llamamos oraclelinux y otra al oracle version 2 con el
nombre oraclewin
c.- desde windows hacemos un export conectándonos al oracle version 1 en linux:
ejemplo: exp usuario/contraseña@oraclelinux file=export_01.dmp
(se puede utilizar un script para hacer un backup full, etc)
d.- el backup se guarda en una carpeta de windows.
e.- finalmente se hace un import:
imp usuario/contraseña@oraclewin file=export_01.dmp

Aclaración Importante: Cuando realizamos exports con diferentes versiones de oracle, esto es posible únicamente cuando tenemos una version mayor (por ej. una 9) y hacemos la exportacion desde una menor (ej. 8 ).

lunes, 6 de agosto de 2007

Instalación de Oracle 10g en Fedora Core 6 y Disco SATA

Introducción.-
Partiendo sobre la base de una PC con fedora instalado.
La instalación la hice en una PC con las siguientes características:
Microprocesador: Pentium Dual Core
Motherboard: Asus - Via P4M890
Disco Rígido: SATA - 160 Gigabytes.

Elección de la distribución.-
Sabemos que Oracle cuando habla de linux para intel 386 solo se refiere a Red Hat y Suse. Siguiendo esta linea, pretendí instalar RedHat Enterprice Linux 4, el primer inconveniente que encuentro es con el disco SATA, si bien esta distro tiene los drivers para SAta (via_sata), pues me decia que no existía ningún disco donde instalar. Entre al setup, en fin despues de algunos intentos y leer foros, google, etc, decidi cambiar de distro. Me fui a Fedora Core 5, y me encontré con la misma historia, finalmente para no alargar, me quedé con Fedora Core 6, lo reconoció al disco inmediatamente y pude realizar una instalación estandar, con Gnome y aplicaciones para servidor de base de datos.

Configuración del S.O. para la instalación de Oracle 10g.-
De acuerdo con la documentación de la instalación de Oracle 10g, configuramos los parámentros del kernel:

Editar el archivo /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
ejecutar sysctl -p
para guardar esta configuración.

Editar /etc/security/limits.conf y agregar las siguientes líneas:
*               soft    nproc   2047
* hard nproc 16388
* soft nofile 1024
* hard nofile 6556

Editar: /etc/pam.d/login

session required /lib/security/pam_limits.so

Desabilitar selinux editando: /etc/selinux/config
selinux=disable
Instalar o verificar los siguientes rpm's, ya sea de los cd's de distribución
o bien del sitio http://ayo.freshrpms.net/fedora/linux/6/i386

rpm -Uvh setarch-*
rpm -Uvh --force tcl-*
rpm -Uvh --force libXau-devel-* libXp-*
rpm -Uvh compat-db-*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh compat-libf2c-34-*
rpm -Uvh compat-gcc-34-*
rpm -Uvh libaio-*
rpm -Uvh compat-gcc-34-c++-*
rpm -Uvh compat-libstdc++-296*
rpm -Uvh compat-libgcc-296*

Librerias motif:
rpm -Uvh openmotif21-2.1.30-14.i386.rpm


Crear usuarios y grupos.
groupadd oinstall
groupadd dba
groupadd oper

useradd -g oinstall -G dba oracle
passwd oracle
Crear los subdirectorios donde vamos a instalar oracle
mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01
Editar el archivo /etc/redhat-release
reemplazar por: redhat-4

Editar el .bash_profile del usuario oracle y agregar las sgtes. lineas:
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=TSH1
export ORACLE_TERM=xterm
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

Instalación.-
loguearse como oracle
comprobar los seteos como ser ORACLE_HOME, etc
$ set | more
arrancar xwindows
$ startx
Iniciar una sesión de terminal
Comenzar la instalación desde el path de instalacion:
$ ./runInstaler