Backup solo de datos de todas tablas

Hola!
Como les va?
Tengo un problema, por motivos que desconozco se duplico un SP, por consiguiente cada vez quiero hacer un dbexport de la base de datos del SIU_294 me da error en el SP que se encuentra duplicado.
Mi consulta es la siguiente, que parametros utilizo o comando si es que existe para generar un dbexport de solamente los datos que se encuentran en las distintas tablas de mi base, mi idea es correr un viejo backup que tengo y funciona de la base de datos, previamente sacarle todos los inser que se encuentran dentro del archivo sql que genero en ese momento y luego correor ese archivo para que me arme la estructura y luego correr el archivo donde tengo todos los datos.
Esto que deseo hacer se puede hacer?
Intente hacer la eliminación, actualización de los SP que se encuentran duplicados pero no logro ejecutar dichas acciones porque el motor me da error de SP duplicados, tengo un total de 6 SP duplicados, todos relacionados el siguiente SP “spu/spi/spd_celular_comp”, por cada uno existe una copia igual en todo sentido, desde cantidad de argumentos y tipos como también la acción que hacen.
Utilizo el informix 2.9.1 y estamos en la versión del SIU 2.9.4 todo esto montado sobre un servidor con SO windows 2003 server
Saludos.

Víctor:

El archivo SQL que genera el export suele estar dividido en “secciones” (por decirlo de alguna maner:

  1. Una primera tiene la creación de la base y los permisos de conexión
  2. Otra tiene la creación de todos los SP
  3. Otra tiene la creación de cada tabla y el llenado de las tablas con los datos bajados (archivos UNL) + creación de indices + permisos sobre las tablas
  4. Otra tiene la creación de todos los triggers
  5. Otra tiene la creación de la Vistas
  6. Al final tiene todo el proceso de actualización de estadisticas.

Tendrías que ver si cuando se interrumpe el export el mismo ya generó todas las sentencias de creación de las tablas y llenado de datos. Si es así, podes editar ese SQL y quedarte con esa parte, y luego tomar todo lo que sea generación de SP de algún export viejo (pero no tanto) que esté completo y aplicarlo luego de importar toda la base de datos.

Fijate y avisanos.

Saludos

Gustavo

Hola Gustavo!
Cuando se aborta el proceso de dbexport en la carpeta de destino, lugar en donde el dbexport úbica todos los archivos en cuestión, lo único que se llega a generar es el archivo sql con las estructuras de las tablas, y sp entre otros datos, pero no hay dana de los datos que contiene las tablas, es decir los archivos “UNL” que se corresponderían a los del paso 3 no genera ninguno, ya que el error del proceso se da en el paso 2 que vos indicas, da el error y no continua simplemente aborta el proceso y se detiene en el sp que da el error.
Es por eso que deseo saber si existe alguna sentencia del dbexport o alternativa de dicha sentencia que permita exportar solamente los datos de todas las tablas de la base de datos, es decir, un “dbexport -o” pero que en lugar de que haga sobre toda la base de datos solo sea sobre los datos de las distintas tablas de mi base de datos, parecido a lo que tienes otros motores como lo es mysql, sql server, oracle entre otros.
Gracias!!!

Víctor:

Tendría que investigar, pero no creo que exista eso … lamentablemente. Después me fijo.

Si podes hacer el UNLOAD tabla por tabla …

Saludos

Gustavo

Hola no tenes un servidor de desarrollo en el que puedas levantar la instancia completa con ontape y replicar el problema?
Yo probaria de cambiarle el nombre al sp y despues borrarlo por los medios tradicionales:
(Para actualizar sysprocedures tenes que conectarte con el usuario informix)

UPDATE sysprocedures SET procname=‘sp_dupli’ WHERE procid=xx;

DROP PROCEDURE sp_dupli;

obviamente es riesgoso actualizar en las tablas de sistema, pero bueno si podes probarlo en una base que no sea de produccion despues podras medir el impacto

Intenta correr el comando oncheck -cc
Esta opción verifica y corrige problemas en las tablas del catálogo de la base de datos.
Si buscas esos procedures en la tabla sysprocedures, los ves que estan duplicados y con la misma cantidad de argumentos y tipo de datos de cada uno?