3. Instalación y configuración
NOTA: Hay un cierto solapamiento con las instrucciones de instalación
en el sitio de Informix y con el excelente HOWTO escrito por Nils Myklebust
disponible en el sitio de IIUG (véase Recursos
Adicionales). Esto es deliberado por dos razones:
-
Esperamos, que con la duplicación, establezcamos algunos hitos importantes.
-
Es posible que el lector pueda aún no haber encontrado los otros
documentos.
3.1 Tareas de preinstalación
Los ejemplos abajo suponen lo siguiente:
-
El nombre de la computadora central es frodo dentro del dominio
hobbit.com
-
Ingresa al sistema como usuario root.
-
Utiliza el shell de Bourne o Korn, bash, pdksh
Cree el grupo informix
La mayoría de las distribuciones de Linux cuentan con addgroup
o groupadd. Estos programas crean a nuevos grupos de usuarios.
Si su sistema tiene una herramienta GUI, tal como usercfg, usted
puede utilizarlo en lugar de otro. La información esencial permanece
sin cambios.
<frodo> $ groupadd -g 777 informix
o
<frodo> $ addgroup -g 777 informix
Estos ejemplos crean a un grupo llamado informix con un GID (identificación
de grupo) de 777. El GID es simplemente un ejemplo. Usted puede utilizar
cualquier GID que aún no esté asignado (cat /etc/group
para ver los GIDs asignados) o utilizar el GID siguiente, no asignado aún.
Solamente el usuario informix, que creará en el siguiente
paso, debería ser un miembro del grupo informix. Si cualquier otro
usuario es un miembro de este grupo, este usuario podrá alterar
o borrar cualquier base de datos - lo cual no es una Buena Idea.
Creando el usuario informix
La mayoría de las distribuciones Linux tendrán adduser
o useradd. Estos programas crean a nuevos usuarios. Si su sistema
tiene una herramienta GUI, tal como usercfg, puede utilizarlo
en lugar de otro. La información esencial permanece sin alteraciones.
<frodo> $ useradd -u 777 -g informix informix
o
<frodo> $ adduser informix
El primer formato requiere que se especifique un UID (- u 777) y el grupo
inicial (-g informix). Crea el usuario informix perteneciente al
grupo informix y le asigna a este usuario el UID 777. Este UID es
simplemente un ejemplo; puede utilizar cualquier UID que no esté
en uso (cat /etc/passwd para repasar los UIDs asignados). Es
esencial que el usuario del informix sea un miembro del grupo
informix y de ningún otro, de lo contrario el modelo de seguridad
de Informix estará comprometido.
El segundo formato usa adduser, el cual es generalmente (el OpenLinux
de Caldera es una excepción notable) un script shell interactivo,
que hace de interface con el programa useradd. Si utiliza este
script y le solicita que especifique un grupo inicial, ingrese informix.
Recomiendo el uso de useradd porque permite tener un mayor control
una vez concluido el proceso. Para mayor detalle vea man useradd.
Al Informix-SE, no es necesario especificar un directorio casa (home)
o el shell para el usuario informix, ya que difícilmente
ingrese como usuario informix, aunque no hará daño
si lo hace así.
Informix Dynamic Server, por otro lado, necesita un directorio casa,
crear un directorio ahora le estará eliminando un paso en la configuración
cuando se libere IDS para Linux y se estará anticipando a instalarlo.
Cree el usuario dba
Cree una cuenta de usuario llamada dba, siga el procedimiento un
utilizador que la cuenta nombrada DBA después del procedimiento
cree el usuario informix. Esta cuenta
será utilizada para crear y manejar sus bases de datos. Se aplican
dos reglas:
-
Nunca utilice la cuenta informix para crear una base de datos.
-
El grupo del usuario dba no tiene que ser informix.
Haciéndolo así, dejará vulnerables los mecanismos
de seguridad construidos en el motor de la base de datos.
El directorio casa del usuario, será donde se grabarán las
bases de datos, por lo tanto préstele atención a su ubicación.
En mi sistema, el directorio del usuario dba es /dbms, el cual reside
físicamente en su propio disco y se monta en el filesystem root,
cuando se enciende el sistema.
Esto permite que pierda mi filesystem de la raíz sin munging
mis bases de datos y viceversa.
Cree el directorio de instalación
Luego, necesita crear un directorio en el cual instalar Informix. El
Filesystem
Hierachy Standard recomienda que los ficheros estáticos, compartidos
(tales como documentación, bibliotecas u otros binarios) estén
instalados bajo /u/opt. Los archivos que no pertenecen al sistema
se instalan generalmente bajo /usr/local. En mi sistema, están
bajo /opt. Usted puede instalarlos donde desee ( no se recomienda
instalarlos por debajo de /tmp o /dev (c)).
<frodo> $ mkdir /opt/informix
<frodo> $ chown informix.informix /opt/informix
<frodo> $ chmod 755 /opt/informix
3.2 Instale el software
Primero configure la variable de ambiente $INFORMIXDIR para que apunte
a su directorio de instalación:
<frodo> $ export INFORMIXDIR=/opt/informix
Luego, configure su camino, de lo contrario los scripts de instalación
no podrán encontrar la información calificada:
<frodo> $ export PATH=$PATH:$INFORMIXDIR/bin
Cambiese al directorio donde grabó los archivos y descompáctelos
(esto no se debería hacer en el directorio de instalación).
Si trabaja con el CD-ROM, instálelos directamente desde ahí.
<frodo> $ cd /downloads
<frodo> $ unzip informix_se___esql_c_bundle_for_linux.zip
Debe finalizar con tres directorios, ESQLC, SE e ICONNECT, los cuales alojarán
a archivos de formato tar, cada uno de estos directorios contendrán:
esqlc.tar, se.tar e iconnect.tar, respectivamente.
Cambie a su directorio de instalación (en nuestro ejemplo /opt/informix),
los archivos tar deben ser descompactados en el orden siguiente: esqlc,
se e iconnect.
ESQL/C
Descompactar esql.tar:
<frodo> $ tar xvf /downloads/esqlc/esql.tar
Instale ESQL/C y aplique su licencia correspondiente (le solicitará
el número de serie y la clave que usted recibió de Intraware):
<frodo> $ ./installesql
SE
Descompactar se.tar
<frodo> tar xvf /downloads/se/se.tar
Instale el SE y aplique la licencia correspondiente (le solicitará
el número de serie y la clave que usted recibió de Intraware):
<frodo> $ ./installse
ICONNECT
NOTA: Este paso es opcional. Informix-SE funcionará absolutamente
bien sin instalar Informix-CONNECT. Tanto SE como ESQL/C tienen la conectividad
necesaria incorporada para interactuar entre sí. IConnect está
solamente para permitirle conectarse a un motor usando los binarios ESQL/C
instalado en un sistema, donde no se han instalado SE o ESQL/C.
Descompacte iconnect.tar
<frodo> $ tar xvf /downloads/iconnect/iconnect.tar
Instale iconnect y aplique la licencia correspondiente (le solicitará
el número de serie y la clave que usted recibió de Intraware):
<frodo> $ ./installconn
3.3 Post-instalación
Son pocas las tareas de post-instalación. Lo importante es decirle
a Informix como debería correr y (opcionalmente) encender la configuración
para TCP/IP.
Configure el archivo sqlhosts
Primero, haga una copia de respaldo de $INFORMIXDIR/etc/sqlhosts.
Si es un novato, puede usar cp -p o cp -a para preservar
la hora y fecha de los archivos originales.
Después de hacer una copia del sqlhosts, edite el archivo
original. Puede o borrar o comentar (usando #) en las líneas que
lee
demo_on onipcshm on_hostname on_servername
este formato se refiere al Informix Dynamic Server, el cual aún
no ha sido portado a Linux. El nombre del servidor (hostname) tiene que
ser exactamente el mismo que el que imprime la salida de uname -n,
de lo contrario el sistema emitirá el error -25591. Usar un alias
no solucionará el problema. La entrada debería semejarse
a:
demo_se seipcpip frodo.hobbit.com sqlexec
-
El campo 1 es el nombre del servidor de la base de datos.
-
El campo 2 es el protocolo de comunicación (a menudo referido como
"nettype" en la documentación de Informix)
-
El campo 3 es el nombre del host donde está corriendo el servidor.
-
El campo 4 es el nombre del servicio (técnicamente, con conexión
seipcpip, el nombre del servicio apunta al motor o al binario que
se está usando, en teste caso, sqlexec).
El protocolo seipcpip usa pipes sin nombres, los cuales sólo
se pueden usar en protocolos de conexión local. No puedo realmente
pensar en una razón obligatoria para no usar seipcpip,
particularmente en un medio de desarrollo (el cual, a propósito,
es la suposición por detrás de esta versión de Informix-SE.
Por lo tanto, permítanme manifestarlo categóricamente: A
menos que tenga una razón específica para no hacerlo así,
use nettype seipcpip para cualquier trabajo con Informix-SE.
3.4 Verifique la instalación
Ahora que ha instalado y configurado todo, esta listo para validar su instalación.
Si Ud. no es un usuario experimentado en Informix, esto es mejor que se
haga con una cuenta regular.
Cree un directorio que contendrá la base de datos de verificación,
digamos, dbtest, e ingrese al directorio (cd). Configure las variables
de ambiente $INFORMIXDIR para apuntar al directorio donde instaló
el Informix; similarmente, configure $INFORMIXSERVER con el nombre que
le indicó en el archivo sqlhosts. Finalmente, adicione
$INFORMIXDIR/bin a su $PATH. En nuestro ejemplo:
<frodo> $ export INFORMIXDIR=/opt/informix
<frodo> $ export INFORMIXSERVER=demo_se
<frodo> $ export PATH=$PATH:$INFORMIXDIR/bin
Corra el programa dbaccessdemo7
<frodo> $ dbaccessdemo7
creará una base de datos ejemplo llamada stores7 en el directorio
corriente y también copie algunas preguntas ejemplos en el directorio.
<frodo> $ dbaccess
Seleccione Query-language desde el menú (sólo presione
Q) y seleccione Choose (C). Esto le mostrará
una lista de preguntas disponibles de la base de datos ejemplo. Utilice
las flechas para seleccionar una pregunta que comience con sel_,
presione Enter dos veces, y debería ver alguna salida. Si todo esto
funcionó, ha conseguido correr Informix-SE en su computadora.
¡Felicitaciones!