Anda di halaman 1dari 11

4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte

JOS ARRARTE
Bl o g de n ot as

Listado de comandos de administracin de Informix


Por jarrarte | 7 octubre, 2009 | base de datos

Introduccin
La idea de este post es listar algunos comandos tiles para el servidor de base de datos Informix, con el que algunos
tenemos que sufrir trabajar da a da. Muchos de ellos se pueden ejecutar desde ambientes grficos, pero generalmente no
disponemos de dichos ambientes en servidores de testing o produccin.

Intenter ir actualizando la lista a medida que me vaya encontrando con otros comandos que considere que valgan la pena.

Los comandos
Bajar el motor
Desde la lnea de comandos, ejecutar:

onmodeky

Podemos hacerlo de forma ms delicada, siguiendo los siguientes pasos:

Ejecutar

onmodesy

para dejar no permitir nuevas conexiones, pero permitir que las conexiones que ya estaban abiertas se cierren de forma
normal. luego de cerrar todas las conexiones, el servidor queda en quiescent mode, algo
as como inactivo, pero no apagado.

El siguiente paso es movernos al siguiente log lgico, ejecutando:

onmodel

Luego forzamos un checkpoint, de forma de estar seguros de escribir todos los buffers a disco:

onmodec

Finalmente, ejecutamos el comando para dejar el servidor de Informix offline:

onmodeky

Subir el motor
Para subir el motor de Informix, ejecutamos sin parmetros el comando:

oninit

En Linux/UNIX, debemos estar logueados como root o como informix para poder ejecutar oninit. En Windows, se debe
ejecutar siendo miembro del grupo InformixAdmin.

Ver la descripcin de un error


Dado un cdigo de error, podemos obtener una descripcin y posibles acciones correctivas ejecutando:

finderrnumero#

El resultado es similar al siguiente cambiando para cada error, claro est:

infordb:~#finderr167
167ISAMerror:StoragespacesizeisnotmultipleofPAGESIZE.

Thedatabaseserveradministratorseesthiserror.Whenyoudefinea
storagespace,youmustspecifyapagesizethatisanintegralmultipleof
thesystempagesize.ThesystempagesizeissetintheParameters
http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 1/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte
thesystempagesize.ThesystempagesizeissetintheParameters
screenwhenthedatabaseserverisfirstinitialized.

Pasar una base de transaccional a no transaccional y


viceversa
Al restaurar un respaldo de una base de datos, si no decimos explcitamente, la base restaurada no soportar transacciones,
sino que quedar en modo no transaccional. Al intentar utilizarla desde nuestras aplicaciones, las sentencias de BEGIN
WORK, COMMIT, ROLLBACK, etc. fallarn por estar trabajando la base en este modo.

En estos casos, podemos pasar la base de datos a transactional unbuffered ejecutando el siguiente comando en una
terminal:

ontapesL0U[database]

nO el siguiente, para pasarla a transactional buffered:

ontapesL0B[database]

Si por el contrario, queremos pasar una base de modo transaccional a no transaccional, ejecutamos:

ontapesL0N[database]

Por informacin acerca de la diferencia los logging modes transactional unbuffered y transactional buffered, ver este otro post
del blog.

Exportar una base de datos


El comando dbexport descarga todos los datos de cada tabla de una base de datos y genera un esquema de la base de
datos. Para exportar una base de dato a archivos, debemos ejecutar el siguiente comando en una terminal:

dbexport[database]

Esto generar un directorio [database].exp con los datos de cada tabla, y desplegar por salida estandar pantalla,
al menos que se rediriga a un archivo un script con la creacin de los objetos de la base.

Importar una base de datos


Para importar una base de datos podemos ejecutar el comando dbimport. dbimport lee el archivo de esquema generado por
el comando dbexport y crea una base de datos cargando los datos de los archivos. Se puede especificar un dbspace
determinado, y el logging mode de la base importada:

dbimport[database][idirectory][ddbspace][l[buffered]]

En donde:

en [database].exp estn ubicados los archivos de datos a importar

d dbspace: especifica el nombre del dbspace en donde la base ser creada. Por defecto, ser rootdbs.

l: Establece que la base importada funcionar en modo unbuffered transaction logging

l buffered: Establece que la base importada funcionar en modo buffered transaction logging

El parmetro [database] es la ubicacin


en de los archivos a importar; el comando buscar un directorio llamado [database].exp para leer los datos de las tablas. Si
se especifica, se buscar ese directorio dentro de [directory]. Se asume que existir un archivo [database].exp/[database].sql
conteniendo la estructura de la base de datos tablas, ndices, contraints, etc..

Mostrar informacin de uso de espacio fsico


Ejecutando el siguiente comando desde una terminal, obtenemos un reporte de los diferentes dbspaces y el espacio utilizado
en cada uno:

onstatd

La salida es similar a la siguiente:

infordb:~#onstatd

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 2/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte

IBMInformixDynamicServerVersion10.00.FC7OnLineUp1days13:15:3938720Kbytes

Dbspaces
addressnumberflagsfchunknchunkspgsizeflagsownername
450c8e7810x60001112048NBInformixrootdbs
4525345020x60001212048N
BInformixdatadbs
2active,2047maximum

Chunks
addresschunk/dbsoffsetsizefreebpagesflagspathname
450c902811025000058385POB/opt/IBM/Informix/CHUNKS/rootdb
45269db82201048576516245POB/opt/IBM/Informix/CHUNKS/datadb
2active,32766maximum

NOTE:Thevaluesinthe"size"and"free"columnsforDBspacechunksare
displayedintermsof"pgsize"oftheDBspacetowhichtheybelong.

Expandedchunkcapacitymode:always

El tamao y el espacio libre de cada chunk columnas size y free estn expresadas en pginas. El tamao de cada pgina
est expresada en bytes en la columna pgsize, por lo que el tamao de cada chunk est determinado por size x pgsize. Cada
chunk est asociado a un dbspace, y esta asociacin se detalla en la columna chunk/dbs (el primer nmero es el id del chunk,
el segundo es el id del dbspace).

Este reporte tambin muestra informacin de replicacin, rutas en dispositivos fsicos, etc. Por una descripcin completa, ver la
pgina de onstat d en la Administrators Reference de Informix.

Actualizar las estadsticas


Desde dbaccess u otro cliente de Informix, podemos ejecutar los siguientes comandos para actualizar las estadsticas de la base
de datos:

Actualizar estadsticas de todas las tablas la base de datos:

<em>updatestatistics
</em>

Para actualizar adems las estadsticas de distribucin de cada tabla (es ms lento):

<em>updatestatisticshigh
</em>

Para actualizar las estadsticas para una tabla:

<em>UPDATESTATISTICS[HIGH]FORTABLE[tabla]
</em>

Lock mode de las tablas


En este post escrib acerca de los lock modes de Informix. Para obtener la informacin acerca del tipo de bloqueo que tienen las
tablas de una base podemos ejecutar la sigiuente consulta:

<em>SELECTtabname,locklevelFROMsystablesWHEREtabid&gt;99
</em>

La columna tabname contiene el nombre de la tabla, la columna locklevel contiene P si el lock mode es por pgina, o R si es
por tupla.

Para crear una tabla con un lock mode determinado lo especificamos al ejecutar el comando CREATE TABLE:

<em>CREATETABLEcustomer(customer_numserial,lnamechar(20)...)
LOCKMODEROW|PAGE|TABLE;
</em>

Para cambiar el lock mode de una tabla utilizamos el comando ALTER TABLE:

<em>ALTERTABLE[tabla]MODIFY
LOCKMODE(PAGE|ROW|TABLE)
</em>
http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 3/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte

Referencias
Damin, de mi trabajo (gracias!)

IBM Informix Dynamic Server Administrators Reference

Informix Unleashed

Posts relacionados:

1. Diferencias entre transactional unbuffered y transactional buffered en Informix

2. Lock modes de tablas de Informix

3. UnxUtils: ejecutar comandos Linux/UNIX en Windows

Etiquetado DB. Bookmark the permalink.

47 respuestas a Listado de comandos de administracin de Informix

Marco says:
5 agosto, 2010 at 1:15 AM

Buena la informacin, me ha servido.

Responder

jarrarte says:
5 agosto, 2010 at 11:24 PM

Me alegro mucho, gracias por tu comentario

Responder

Vilma says:
19 agosto, 2010 at 5:20 PM

Gracias por compartir tus conocimientos con quienes debemos trabajar con Informix, si puedes indicarme por qu falla
el comando dbexport; es decir el respaldo se hace incompleto, qu hacer en estos casos y qu herramientas utilizar para
verificar el estado de la base de datos. Gracias

Responder

jarrarte says:
23 agosto, 2010 at 4:02 PM

Hola, gracias por tu comentario. Con los datos que me das del error no hay mucho que te pueda comentar; te
retorna algn mensaje de error o aviso? Quiz una bsqueda de ese mensaje en Google te pueda ayudar.

Suerte y gracias por visitar el blog.


Saludos,
Jos

Responder

Henry Torres Moreno says:


19 octubre, 2010 at 5:16 PM

Buen trabajo, me ha sacado de varias dudas.


Gracias

HTM

Responder

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 4/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte

Ren G says:
3 noviembre, 2010 at 12:28 PM

Excelente informacin, me ayudo mucho , gracias n_n

Responder

Ignacio says:
16 diciembre, 2010 at 5:35 PM

Hola, tengo problemas al importar una base de datos, no es la primera vez que me pasa.
cuando la creo comienza a importarla y antes de terminar queda como esperando (esto en la consola). Y luego, que
seria el 2do inconveniente que tengo, es que cuando quiero importarla de nuevo ya esta creada, como se hace para
importar con la base ya creada?
gracias por tu ayuda

Responder

Jos Arrarte says:


28 diciembre, 2010 at 11:37 PM

Es posible que el respaldo sea grande, y ese tiempo que queda como esperando, el motor de base de datos est
trabajando importando la base? Si lo dejas mucho tiempo termina? El disco duro est trabajando? Y el CPU?
(esto se puede ver con un top en otra consola)

Saludos y suerte!

Responder

Jose Lujan says:


13 enero, 2011 at 6:35 PM

Buenas Tardes. Una consulta el dia de hoy voy a bajar a texto toda mi BD utilizando en comando dbexport ss, luego la
voy a volver a subir para que se cree nuevamente las tablas, indices, etc.

La pregunta es: Cuando subo la data corro el riesgo de que se trabe en alguna parte?, ya me sucedio antes y lo tuve
que solucionar poniendo la BD en otro modo, creo que fue unbuferred, no lo recuerdo bien y luego de cargar toda la
data tuve que volver al modo incial como estaba la BD. Actualmente mi BD la veo con el flag B.

Alguien me puede ayudar.

Muchas Gracias.

Responder

Jos Arrarte says:


9 febrero, 2011 at 6:48 AM

A decir verdad no lo se, este post intenta ser una recopilacin de comandos para alguien que no es DBA de
Informix (en realidad, para mi )

Saludos y gracias por tu comentario!

Responder

carlos says:
15 abril, 2011 at 3:15 PM

gracias por el aporte sirve muchisimo y podrias poner otros comandos del informix tab

Responder

paul says:
1 julio, 2011 at 6:00 PM

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 5/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte
un favor no sabras donde hay referencias de como sacar informacion hacerca de la base de datos que corre en informix
y para realizar consultaa las misma

Responder

Grandez says:
22 julio, 2011 at 4:30 AM

Al guien de Uds me puede ayudar con que comando puedo 1ero ver el espacio de buffer de memoria utilizado y 2do
como liberarlo. porque he tenido casos que que se llena el buffer de memoria de la BD y termina por caerser la base de
datos.

Responder

Emiliano says:
16 septiembre, 2011 at 8:03 AM

Gracias por la informacion, queria saber si sabes como realizar consultas a una BD sin entrar a dbaccess, osea tirar
consultas desde la consola, es que debo corroborar el funcionamiento de las auditorias.

Responder

Super says:
16 septiembre, 2011 at 6:13 PM

Requiero de su ayuda, por accidente elimine algunos archivos d la carpeta c:\informix\ el programa que utliza el
informix funciona bien, pero no puedo hacer respaldo con dbexport ss, aparece el error 25596 The
INFORMIXSERVER value is not listed in the sqlhosts file or the registry. Como puedo respaldar la base de datos y poder
instalar desde cero.

Responder

Gaticaz says:
9 marzo, 2012 at 5:36 PM

Muy bueno, gracias.

Responder

Sandra says:
12 marzo, 2012 at 7:02 PM

Hola..gracias por la informacin que brindas, me puedes decir como verifico el estado del servicio de bd ? y que cliente
windows puedo usar para conectarme a el servidor linux donde tengo informix??

Responder

Jos Arrarte says:


14 marzo, 2012 at 11:05 AM

Hola Sandra, gracias por tu comentario.

Sobre el estado del servicio, depender en qu sistema operativo est funcionando el motor. Si ya ests
conectada al motor y quieres conocer el estado de los dbspaces puedes utilizar onstat d h.

Para acceder a las bases yo utilizo el Aqua Studio (http://www.aquafold.com/aquadatastudio.html), me resulta


muy completo porque funciona con varios motores. Puedes descargar una versin de prueba por 30 das.

Espero que esta informacin te sea til. Saludos,


Jos

Responder

Sandra says:
14 marzo, 2012 at 1:58 PM

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 6/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte
Hola Jos, ya me est corriendo bien el informix y me he conectado desde PHP. Descargu el Aqua
Studio, pero no s que configuracin le tengo que hacer a mi equipo para que este funcione. Le debo
configurar el ODBC?? tengo windows xp y estoy configurandole el IBM ODBC DRIVER pero me sale un
error en la conexin que dice Test connection was NOT sucessful.[informix][Informix ODBC Driver]
[Informix]Cannot locate Infdrv1 service/tcp service in /etc/services.

Responder

Limbert Hermosa Rodriguez says:


26 mayo, 2015 at 7:35 PM

Hola Sandra, estoy buscando ayuda para conectarme con PHP de windows a Linux Informix,
y vi que tu lo lograste, me puedes ayudar?, tengo la conexion de ODBC con IBM INFORMIX
CLIENTE pero no puedo conectarme desde el PHP

Responder

Guido Pineda says:


23 marzo, 2012 at 6:09 PM

Hola, es posible sacar un respaldo de la base de datos en caliente, sin desconectar a los usuarios?

Responder

Jos Arrarte says:


3 abril, 2012 at 8:28 AM

Hola Guido, cmo ests? No estaba muy seguro acerca de la respuesta, por lo que recurr a Internet como
ayuda. Encontr este link que creo que te puede servir: http://www.dbforums.com/informix/1642400hot
backupusingonbar.html#post6399087

Mucha suerte!
Saludos,
Jos

Responder

misaeljuvenal says:
17 abril, 2012 at 10:01 AM

buen post.;) me ha servido de mucho. soy nuevo en informix me gustara saber como cambiar la contrasea y usuario.
ver el listado de los programas fuentes.

saludos

Responder

Jos Arrarte says:


2 mayo, 2012 at 10:28 PM

Hola misaeljuvenal, gracias por tu comentario. El usuario de Informix es un usuario del sistema operativo
(usuario Linux), por lo que cambiar el password con passwd debera hacer lo que necesitas.
Saludos!

Responder

Carlos Martinez says:


5 mayo, 2012 at 10:43 PM

Hola, Muchas gracias, muy bueno el aporte. Un comentario tambin para contestarle a Guido Pineda, y que si buscan
ms informacin puede ayudar a otros. En mi empresa trabajamos con informix, y nosotros hacemos el respaldo de la

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 7/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte
base en caliente con ontape s l 0 y para restaurarla con ontape r ( en este caso s debemos bajar el servicio
informix, obviamente). Saludos.

Responder

Rafael says:
28 mayo, 2012 at 1:46 PM

Gracias por el blog, me ha ayudado a entender un poco ms de que va esto del Informix.

Responder

Nicols says:
28 mayo, 2012 at 4:58 PM

Gente.. como se hace un back up en informix??

Responder

jarrarte says:
4 julio, 2012 at 3:26 PM

Revisa la parte de Exportar una base de datos en este post.


Saludos,
Jos

Responder

VictorG says:
28 agosto, 2012 at 12:25 AM

Excelente blog, felicito a su propietario por los aportes.


Trabajo con informix desde el 1995, actualmente tengo experiencia en todas las versiones de informix para linux.

Conosco la instalacion y configuracion del producto.


Si en algo puedo ayudar, les dejo mi correo.

Victor Gomez

Responder

jarrarte says:
31 agosto, 2012 at 12:26 PM

Gracias por tu comentario Vctor!


Hoy en da no estoy trabajando tanto con Informix (ms bien MySQL y Oracle), pero voy a tener en cuenta en
caso de ser necesario.

Un saludo cordial,
Jos

Responder

toni says:
24 agosto, 2015 at 5:02 AM

Buenos dias, Tengo una BD en Informix y al parecer se han llenado los logs, y se me queda en quiesecent
mode, como puedo reinciar la BD para que vuelva a funcionar gracias por la ayuda

Responder

leonel ledezma says:


18 septiembre, 2012 at 10:44 PM

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 8/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte
Buenas noches a todos

Responder

leonel ledezma says:


18 septiembre, 2012 at 10:46 PM

No puedo respaldar informix me marca el siguiente mensaje,alguien me puede apoya por favor
Please mount tape 1 on /dev/rmt/0m and press return to continue
Archive failed Dbspace dbms2 is disabled.

Responder

jarrarte says:
30 octubre, 2012 at 2:13 PM

Buenas! Tu caso es parecido a lo que describen ac? http://www.dbforums.com/informix/996837dbspace


disabled.html

Saludos y suerte!

Responder

Diego Giacoia says:


19 noviembre, 2012 at 4:23 PM

Jos, buscando solucionar un tema de informix me encontre con el blog muy completo
Gracias
Abrazo
Diego

Responder

jarrarte says:
20 noviembre, 2012 at 11:42 AM

Qu bueno que te haya servido Diego!


Un abrazo

Responder

Jugo says:
11 noviembre, 2014 at 5:34 PM

Buen aporte

Responder

Andres says:
1 enero, 2015 at 7:08 PM

esta muy buena la ayuda sera q puedes subir mas respecto a informix y sfi por seria mucha ayuda en especial las
consultas de tablas

Responder

olga says:
20 abril, 2015 at 7:03 PM

Hola.
un favor como se consulta el regsitro de una tabla sin bloquear. por ejemplo, en sql utilizas select * from nombre de
tabla (nolock) where ..

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 9/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte
Responder

Dario says:
30 abril, 2015 at 4:03 PM

Buenas tardes.

Como puedo saber el espacio que ocupa una base de informix ?

Gracias!
Dario.

Responder

jarrarte says:
22 mayo, 2015 at 12:43 PM

Esta parece ser una buena referencia: http://www.oninitgroup.com/calculatingsizedatabases


No lo prob, porque no tengo una base Informix a mano.
Suerte!

Responder

Limbert Hermosa Rodriguez says:


26 mayo, 2015 at 7:50 PM

Gracias, todo esto es muy bueno, pero quiero ayuda para conectarme a informix desde el PHP por favor y de antemano
gracias a todos

Responder

wilson says:
15 junio, 2015 at 2:31 PM

Hola necesito ayuda con informix, antes me aprecian 3 dbspaces y ahora solo aparece uno.gracias

Responder

Victor Hugo says:


7 agosto, 2015 at 7:41 PM

Hola,
En Informix me emite este error,
finderr 346
346 Could not update a row in the table.
While the database server was processing an UPDATE, it received an
unexpected error. Check the accompanying ISAM error code for more
detailed information on the cause. Possible causes include hardware
errors and locking conflicts.

hay veces que puedo actualizar los registros y otras no, puede ser un Begin mal inicializado o es bloqueo de la tabla??
Saludos.

Responder

jarrarte says:
11 agosto, 2015 at 6:14 PM

Salvo que sea un error de hardware, tiendo a pensar que la tabla o la fila que ests actualizando est
bloqueada por otra transaccin que transcurre en el mismo momento.

Responder

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 10/11
4/2/2016 ListadodecomandosdeadministracindeInformixJosArrarte

toni says:
24 agosto, 2015 at 5:00 AM

Buenos dias, Tengo una BD en Informix y al parecer se han llenado los logs, y se me queda en quiesecent mode, como
puedo reinciar la BD para que vuelva a funcionar gracias por la ayuda

Responder

Carlos says:
16 septiembre, 2015 at 7:10 PM

Una pregunta:
Como puedo realizar el dbexport automaticamente, como saco un backup automaticamente

Responder

Jos Arrarte | Mantra Theme by Cryout Creations | Powered by WordPress.

http://josearrarte.com/blog/2009/10/07/listadodecomandosdeadministraciondeinformix/ 11/11

Anda mungkin juga menyukai