FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Optimización de los índices
Me gustaría saber si es posible regenerar indices de la base de datos con interbase 7.1 para conseguir acelerar el acceso a las tablas de forma manual.
Tengo entendido que interbase realiza este proceso automáticamente cuando no hay nadie conectado pero, podría hacerlo en caliente con algún comando ? Saludos... Última edición por AMINOA2R fecha: 03-08-2005 a las 16:09:35. |
#2
|
|||
|
|||
Puedes crear indices con la orden
create index <Nombre_Indice> on <nombre_tabla>(<Lista_de_campos>) Por ejemplo Create index ISLuIDX on CLIENTES( COD_CLIENTE,NOM_CLIENTE ) |
#3
|
|||
|
|||
Ups disculpa, lei por encima el mensaje y pensé que querías crear índices.
En IB tienes el Sweep interval, el cual cada X número de transacciones hace una especie de "pack" De todos modos lo que yo hago es hacer un backup y un restore de la BD, lo cual mejora mucho el rendimiento, pues al hacer el restore si que genera de nuevo los índices, incluso el tamaño de la BD se hace menor. Yo tengo una tarea programada en el servidor, cada fin de semana paro el servicio de FireBird, renombor la BD ( con la fecha, asi tengo una copia semanal que posteriormente grabo en DVD ), hago un gBak de la BD y posteriormente un restore, posteriormente reinicio el servicio de IB. Se nota bastante, sobre todo en las insercciones / modificaciones. |
#4
|
|||
|
|||
Yo noto bastante más rápida la base de datos los lunes pero conforme vamos avanzando la semana, los accesos van siendo más lentos.
Compruebo que me van más lentos para cada una de las empresas que tenemos y que estan en GDB´s diferentes lo cual me indica que el retardo que tengo al final de la semana se debe más bien al motor de la base de datos más que a la propia base ya que entre a la base que entre un viernes, todas van lentas por tanto, más bien el problema va a ser del que gestiona todas ellas; es decir, del IBSERVER pero, no se que mantenimiento se puede hacer sobre el motor de bases de datos. |
#5
|
|||
|
|||
Cita:
Yo te recomiendo que pruebes a hacer un backup y posteriormente restaurarlo, verás como el tamaño de la bD es considerablemente menor, y el rendimiento mayor. Si pones una tarea planificada en el servidor, la cual llame a un batch donde llames al gBak ( mirate los comandos que admite ). Que yo sepa, al motor no hay que hacer nada, es a la base de datos, automaticamente lo hace según el sweep interval. |
#6
|
|||
|
|||
Pues yo estoy convencido de que los sweep los hace internamente el interbase como tu bien comentas pero cuando no hay nadie conectado.
Es como si la base de datos se arreglará o le pusieran turbo al servidor los lunes. Por este motivo, no hago restores aunque si hago backup programados. Se arregla el solito y sin reiniciaralo. Po que? Debería tener el mismo problema un lunes sin embargo sin hacer nada, el archivo IBSERVER.EXE baja en tamaño de megas si lo miras desde el administrador de tareas de windows y el tamaño de memoria de carga de transacciones. |
|
|
|