Como mantener una base de datos Jet 4.0 en buenas condiciones

Seleccione idioma Seleccione idioma
Id. de artículo: 303528 - Ver los productos a los que se aplica este artículo
Este artículo se publicó anteriormente con el número E303528
Expandir todo | Contraer todo

En esta página

Resumen

De manera predeterminada, Microsoft Jet es el motor de base de datos que se utiliza en Microsoft Access. En este artículo se describen prácticas recomendadas que puede utilizar para ayudar a mantener la base de datos Jet en las mejores condiciones. En este artículo se describen bases de datos que se ejecutan en un entorno del usuario único y en un entorno multiusuario.

Prácticas recomendadas

Esta sección es de aplicación para todas las bases de datos Jet si usted es el único usuario de la base de datos o si varios usuarios utilizan la base de datos en una red.

Compruebe que está instalado el Service Pack más reciente del sistema operativo

Instale el Service Pack más reciente del sistema operativo.

Para comprobar que tiene instalado el Service Pack más reciente del sistema operativo, visite el siguiente sitio web de Microsoft:
http://update.microsoft.com
Si trabaja en un entorno de red, asegúrese de que el servidor de archivos de red tiene el Service Pack más reciente del sistema operativo. De este modo se asegura de que el servidor de archivos de red tiene las actualizaciones más recientes del redirector de red y el sistema de archivos.

Compruebe que está instalado el Service Pack más reciente de Microsoft Jet

Para obtener más información acerca de cómo obtener la versión más reciente del motor de base de datos Jet 4.0, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
239114 Cómo obtener el Service Pack más reciente para el motor de base de datos Microsoft Jet 4.0
Si trabaja en un entorno de red, debe instalar el Service Pack más reciente de Microsoft Jet en todos los equipos cliente. No tiene que instalar el Service Pack de Microsoft Jet en el servidor de archivos de red a menos que dicho servidor también ejecute una o más aplicaciones que utilicen Microsoft Jet.

Utilice un diseño de base de datos eficaz

Una base de datos eficazmente diseñada mejora el rendimiento de la base de datos. Además, ayuda a reducir el riesgo de daños del archivo. Para obtener más información acerca de las prácticas recomendadas para diseñar una base de datos, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
289533 Dónde encontrar información acerca del diseño de una base de datos en Microsoft Access

Utilice un formato de archivo de base de datos Jet que coincida con la versión del motor de base de datos Jet que se esté utilizando

Para obtener el máximo rendimiento y estabilidad, utilice una base de datos de formato de Microsoft Jet 4.0 cuando utilice un cliente de Microsoft Jet 4.0. Igualmente, utilice una base de datos de formato de Microsoft Jet 3.0 cuando utilice un cliente de Microsoft Jet 3.5.

La siguiente tabla muestra los formatos de Jet actualmente disponibles. También muestra qué archivo DLL de traducción se utiliza para comunicarse con el formato de Jet cuando se utiliza un cliente de Jet 4.0:

Contraer esta tablaAmpliar esta tabla
Versión de AccessFormato de JetArchivo DLL de traducción utilizado
Access 2.0 Jet 2.0Msrd2x40.dll
Access 95 Jet 3.0Msrd3x40.dll
Access 97 Jet 3.0Msrd3x40.dll
Access 2000 Jet 4.0ninguno
Access 2002 Jet 4.0ninguno
Access 2003 Jet 4.0ninguno
La siguiente tabla muestra que Microsoft Access 95 y Access 97 crean un archivo de base de datos de formato de Microsoft Jet 3.0. Access 2000, Access 2002 y Office Access 2003 crean un archivo de base de datos de formato de Microsoft Jet 4.0. Cuando trabaje con un cliente de Microsoft Jet 4.0, utilice un archivo de formato de base de datos Microsoft Jet 4.0 para evitar el uso de un archivo DLL de traducción. Si utiliza un cliente de Microsoft Jet 3.5, es aconsejable que utilice una base de datos de formato de Microsoft Jet 3.0.

La siguiente tabla muestra los clientes del motor de base de datos Microsoft Jet que se utilizan con más frecuencia y la versión del motor asociado de la base de datos Jet que utiliza el cliente de dicho motor:

Contraer esta tablaAmpliar esta tabla
Aplicación clienteMotor de base de datos Jet utilizadoFormato recomendado de la base de datos Jet
Access 2.0Jet 2.0Jet 2.0
Access 95Jet 3.0Jet 3.0
Access 97Jet 3.5Jet 3.0
Access 2000Jet 4.0Jet 4.0
Access 2002Jet 4.0Jet 4.0
Office Access 2003Jet 4.0Jet 4.0
DAO 3.0Jet 3.0Jet 3.0
DAO 3.5Jet 3.5Jet 3.0
DA0 3.6Jet 4.0Jet 4.0
Microsoft.JET.OLEDB.3.51Jet 3.5Jet 3.0
Microsoft.Jet.OLEDB.4.0`Jet 4.0Jet 4.0
Controlador ODBC de AccessJet 4.0Jet 4.0
Nota el controlador ODBC de Microsoft Access que se incluye con MDAC 2.0 o una versión anterior utiliza Microsoft Jet 3.5. El controlador ODBC de Microsoft Access que se incluye con MDAC 2.1 y MDAC 2.5 utiliza Microsoft Jet 4.0. MDAC 2.6 y las versiones posteriores no incluyen el controlador ODBC de Microsoft Access.

En ciertas situaciones, como cuando tiene aplicaciones de Jet antiguas y recientes que comparten el mismo archivo de base de datos, quizá no pueda utilizar el formato de archivo de la base de datos Jet más reciente. Esto se debe a que los motores de Jet antiguos no pueden leer ni escribir en un formato base de datos Jet más reciente. Por consiguiente, debe utilizar el formato más antiguo y utilizar los archivos DLL de traducción.

No utilice palabras reservadas ni caracteres reservados para los nombres de objeto y de campo

No utilice palabras reservadas ni caracteres reservados cuando asigne un nombre a los objetos y campos de la base de datos. Las palabras o caracteres reservados que se utilizan solos o en combinación con otras palabras pero con un espacio antes y después pueden dañar la base de datos.

Para obtener más información acerca de las palabras y los caracteres reservados en Microsoft Access, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
286335 Lista de palabras reservadas en Access 2002 y Access 2003

Periódicamente compacte la base de datos Microsoft Jet

Si realiza cambios frecuentes en la base de datos, se podrían fragmentar partes de la misma. Por consiguiente, periódicamente ejecute la utilidad utilidad Compactar base de datos de Access. Aunque no tenga una copia de Access, puede compactar la base de datos mediante la utilidad Jet Compact (JETCOMP.exe).

Para obtener más información acerca de cómo obtener la utilidad Jet Compact para Microsoft Jet 4.0, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
295334 La utilidad Jet Compact está disponible en el Centro de descargas
La frecuencia con la que debe compactar la base de datos depende de la propia frecuencia con que se realicen cambios en los datos. Si los datos no cambian con frecuencia, no tiene que compactar muy a menudo. Si realiza cambios frecuentes en la base de datos, compacte la base de datos con más frecuencia. Aunque no hay ninguna regla formal sobre la frecuencia con la que compactar las bases de datos, es aconsejable compactar regularmente.

Los párrafos siguientes describen el proceso que utiliza Microsoft Jet para compactar la base de datos.

Para obtener más información acerca de cómo compactar una base de datos, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
288631 Desfragmentar y compactar la base de datos para mejorar el rendimiento
El motor de base de datos Microsoft Jet trata a los archivos de base de datos de Access como una serie de bloques de 4096 bytes. Es similar a la forma en que un sistema de archivos típico trata los datos del disco duro. Una serie de estos bloques almacena el conjunto completo de registros en una tabla de Microsoft Jet. Cada bloque apunta al bloque siguiente. Cada bloque puede contener uno o más registros. El número de registros que contiene un bloqueo depende del número de campos y de la cantidad de datos que haya en cada registro. Cuando se agregan o eliminan registros de la tabla, los bloques de la misma se fragmentan en el archivo de base de datos.

Cuando compacta una base de datos Jet, los bloques se desfragmentan y cada tabla se coloca en un intervalo contiguo de bloques. Esto mejora el rendimiento de lectura y escritura en la tabla.

Los índices de una base de datos de Access también se almacenan en bloques de 4096 bytes. Los índices se pueden fragmentar igual que los registros de tabla.

Cuando compacte la base de datos Jet, esta aplicación actualizará las estadísticas de tabla almacenadas en la base de datos. Una estadística de tabla importante es el número de registros que contiene. Si el número de registros en las estadísticas de tabla difiere sustancialmente del número real de registros de la tabla, el rendimiento no será tan bueno. Por ejemplo, si las estadísticas de tabla indican que hay un número de registros pequeño en la tabla, el optimizador del motor de la base de datos Jet no utilizará ningún índice de la tabla cuando el motor realice búsquedas o combinaciones. Un número de registros pequeño resulta más eficaz. Un gran número de registros podría ser ineficaz. Por consiguiente, si en la base de datos se agregan, eliminan o actualizan muchos registros, compáctela con más frecuencia.

Microsoft Jet también vuelve a optimizar las consultas almacenadas en la base de datos cuando ésta se compacta. Así se reflejan las estadísticas de la tabla actualizadas. Por consiguiente, se mejora el rendimiento de la consulta almacenada cuando compacta la base de datos.

Haga una copia de seguridad del archivo de base de datos Microsoft Jet regularmente

Defina una programación de copia de seguridad en función de la cantidad de datos que puede permitirse perder. Por ejemplo, si se puede permitir el lujo de perder un día de datos, realice una copia de seguridad diaria. Si puede perder una semana de datos, hágala semanalmente. Una copia de seguridad completa del archivo de base de datos es la mejor manera de asegurarse de que podrá recuperar el archivo de base de datos de Microsoft Jet si se producen daños.

Importante: si trabaja en un entorno de red, debe cerrar todos los clientes de Microsoft Jet antes de realizar la copia de seguridad del archivo de base de datos de Microsoft Access. Si no lo hace, el archivo de copia de seguridad podría contener datos incompletos o incoherentes. Compruebe regularmente sus archivos de copia de seguridad para asegurarse de que son correctas.

Compruebe que está instalado el Service Pack más reciente de la versión de Office

Microsoft proporciona periódicamente Service Packs y actualizaciones de Microsoft Office. Instale el Service Pack o actualización más reciente de Office para su versión de Office con el fin de mejorar el rendimiento e interoperabilidad con otros programas. Utilice el sitio web de Microsoft Office Update para instalar automáticamente todos los Service Pack y actualizaciones más recientes. Para detectar qué actualizaciones ha de instalar en su equipo, visite el sitio web Office Update en:
http://office.microsoft.com/es-es/downloads/maincatalog.aspx
Una vez que el sitio web de Office Update detecta las actualizaciones más recientes necesarias, recibe una lista de las actualizaciones recomendadas para que las apruebe. Haga clic en Iniciar la instalación para instalar las actualizaciones.

Prácticas recomendadas adicionales para los entornos de red

Microsoft Jet es un sistema de base de datos de uso compartido de archivos. Un sistema de base de datos de uso compartido de archivos significa que el procesamiento del archivo se produce en el cliente. Cuando una base de datos de uso compartido de archivos, como Microsoft Jet, se utiliza en un entorno multiusuario, varios procesos de cliente utilizan operaciones de lectura, escritura y bloqueo de archivos en el mismo archivo compartido de una red. Si un proceso no se puede completar, el archivo podría quedar incompleto o dañado. Un proceso puede quedar incompleto por alguno de los siguiente motivos:
  • Cuando un cliente se detiene inesperadamente
  • Cuando la conexión de red de un servidor de error
Microsoft Jet no está diseñado para ser utilizado con aplicaciones de servidor de uso masivo, con gran simultaneidad de usuarios o que estén siempre en funcionamiento (24 horas al día, siete días a la semana). Lo mismo sucede para aplicaciones de servidor del tipo aplicaciones web, aplicaciones del comercio, aplicaciones transaccionales y aplicaciones de servidores de mensajería. Para estos tipos de aplicaciones, la solución mejor es cambiar a un verdadero sistema de base de datos basado en cliente-servidor, como Microsoft Data Engine (MSDE) o Microsoft SQL Server. Cuando utiliza Microsoft Jet en aplicaciones de uso masivo como los Servicios de Microsoft Internet Information Server (IIS), puede experimentar alguno de los problemas siguientes:
  • Daños en la base de datos
  • Problemas de estabilidad, como bloqueos o errores de IIS
  • Error súbito o error persistente del controlador a la hora de conectarse a una base de datos válida que requiera reiniciar el servicio de IIS
Las secciones siguientes contienen las recomendaciones a seguir cuando comparta un archivo de base de datos de Microsoft Jet o Microsoft Access en un servidor de archivos de red.


No utilizar la redirección de carpetas en Windows Vista

Hay un problema conocido por el que una base de datos de Jet se puede dañar cuando se guarda en una carpeta que utiliza la característica de redirección de carpetas de Windows Vista. Conocemos este problema y lo estamos investigando actualmente. Actualizaremos este artículo cuando dispongamos de más información acerca de este problema.

Para evitar este problema, no debe guardar una base de datos de Jet en una carpeta que use la característica de redirección de carpetas de Windows Vista. No hemos observado este problema con la característica de redirección de carpetas de Windows Server 2003, Windows XP ni Windows 2000.

Para obtener más información acerca de la redirección de carpetas, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
232692 Característica Redirección de carpetas en Windows
Para obtener más información acerca de la redirección de carpetas, visite el siguiente sitio web de Microsoft:
http://www.microsoft.com/technet/community/en-us/management/manage_faq.mspx#EFG

Bloqueo oportunista, también conocido como oplocks, en el servidor de archivos


El bloqueo oportunista puede aumentar el riesgo de producir daños en la base de datos de Jet cuando dos o más clientes comparten un archivo en un servidor de archivos de red. Este problema se puede dar en Microsoft Windows NT 4.0, Microsoft Windows 2000 y servidores de archivos de Novell que admitan el bloqueo oportunista. Este problema también sucede con clientes que ejecutan Microsoft Windows NT 4.0, Microsoft Windows 2000 o Microsoft Windows XP, y que se conectan a un servidor de archivos que admite el bloqueo oportunista.

Nota: los clientes que ejecutan Microsoft Office Access 2003 deben tener un sistema operativo Windows 2000 SP3 o posterior, o Windows XP o posterior.

Para evitar este problema, debe instalar Windows 2000 Service Pack 3 (SP3) o posterior en el servidor de archivos de Windows 2000 donde se encuentre el archivo de base de datos de Access. A continuación, instale el Service Pack de Windows más reciente en cada equipo cliente de Windows que se conecte al servidor de archivos de Windows 2000.

Para obtener la versión más reciente del Service Pack de Windows Installer, visite el sitio web de Microsoft siguiente:
Microsoft Windows Update
Si está utilizando Windows NT 4.0 o si no desea instalar Windows 2000 Service Pack 3 o posterior, puede deshabilitar el bloqueo oportunista para evitar el problema.

Importante Al deshabilitar el bloqueo oportunista, el rendimiento de otras aplicaciones puede verse perjudicado. Si tiene preguntas acerca de esto, póngase en contacto con el servicio de soporte técnico de Microsoft Windows.

Para obtener más información acerca de cómo deshabilitar el bloqueo oportunista en Windows NT 4.0, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
129202 Explicación del bloqueo oportunista en Windows NT
Para obtener más información acerca de cómo deshabilitar el bloqueo oportunista en Windows 2000, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
296264 Configuración del bloqueo oportunista en Windows
Para deshabilitar el bloqueo oportunista en un servidor de archivos de Novell, es aconsejable que se ponga en contacto con el servicio de soporte técnico de Novell. Para obtener información acerca de cómo ponerse en contacto con Novell, haga clic a continuación en el número de artículo apropiado de la lista siguiente para verlo en Microsoft Knowledge Base:
65416 Lista de contactos de proveedores terceros de hardware y software, A-K

60781 Lista de contactos de proveedores terceros de hardware y software, L-P

60782 Lista de contactos de proveedores terceros de hardware y software, Q-Z
Microsoft proporciona información de contacto con otros proveedores para ayudarle a encontrar soporte técnico. Esta información de contacto puede cambiar sin previo aviso. Microsoft no ofrece ninguna garantía con respecto a la exactitud de esta información de contacto con otros proveedores.

Problemas que tener en cuenta cuando se comparte una base de datos Microsoft Jet

No se recomienda compartir ningún archivo de base de datos de Microsoft Jet que se encuentre almacenado en un recurso compartido de archivos de Microsoft Windows 95, Microsoft Windows 98 o Microsoft Windows Millennium Edition (Me) con clientes de Windows NT o Windows 2000.

Si tiene un entorno mixto con equipos en red, equipos que se ejecutan en Windows 95, Windows 98 o Windows Millennium Edition, y equipos que se ejecutan en Windows NT o Windows 2000, y comparte la base de datos con otros usuarios de red, es aconsejable que almacene el archivo de base de datos y lo comparta en un servidor de Windows NT o Windows 2000 con el bloqueo oportunista deshabilitado.

Se pueden dar daños si hay equipos cliente de Windows NT o Windows 2000 que comparten un archivo almacenado en un recurso compartido de archivos de Windows 95, Windows 98 o Windows Millennium Edition. Este problema puede aparecer incluso si el cliente de Windows NT o Windows 2000 tienen el bloqueo oportunista deshabilitado. Este problema aún esta en investigación. Enviaremos por correo más información sobre este artículo cuando dicha información esté disponible.

Nota: los clientes que ejecutan Microsoft Office Access 2003 deben tener un sistema operativo Windows 2000 Service Pack 3 o posterior, o Windows XP o posterior.

Utilice un servidor de archivos robusto

Asegúrese de que tiene un servidor de archivos robusto que pueda controlar el número de usuarios y las solicitudes que se realizan al archivo de base de datos de Microsoft Jet. Además, asegúrese de que el servidor de archivos no está sobrecargado con la administración de otros procesos, como actuar como controlador de dominio de Windows, servidor Exchange o servidor SQL.

También puede haber un problema si reinicia el servidor para corregir un problema relacionado con otro servicio importante, como el servicio de correo. Lo mismo sucedería si reinicia el servidor después de instalar nuevo software o aplica un Service Pack o una revisión y se olvida de que la base de datos Microsoft Jet se encuentra actualmente compartida en el servidor. Cuando se reinicia el servidor de archivos, se produce la interrupción inesperada de las conexiones de clientes en la base de datos. Esto puede dañar la base de datos. Para evitar interrupciones de la conexión de clientes, todos los clientes deben cerrar la base de datos antes de reiniciar el servidor de archivos o antes de que se apliquen las actualizaciones de software en el servidor.

También se debe colocar un servidor de archivos en una ubicación segura donde el servidor de archivos no se pueda desconectar accidentalmente. El servidor debe tener una alimentación eléctrica ininterrumpida para protegerse contra caídas o fluctuaciones de potencia intermitentes. El servidor de archivos de red también debe tener lo siguiente:
  • Discos duros de alto rendimiento
  • Una tarjeta de red de alta calidad
  • Mucha memoria RAM para garantizar que el servidor puede controlar la carga

Compruebe la conectividad de red

Asegúrese de que tiene una red estable y rápida con conectividad de red estable para el servidor de archivos de red. No es aconsejable que utilice Microsoft Jet sobre una WAN, una conexión de módem, FTP, ni ningún otro transporte de la red de poca confianza. Como Microsoft Jet es un sistema de base de datos de uso compartido de archivos, cualquier transporte de poca confianza aumenta las oportunidades de que se quite un cliente. Esto puede aumentar la probabilidad de daños en una base de datos.

Minimice el número de conexiones que se realizan de cada cliente

Es aconsejable que diseñe cada cliente para que utilice una conexión a una base de datos Microsoft Jet. Cada conexión a una base de datos Jet representa a un cliente independiente para la base de datos, incluso cuando estas conexiones proceden del mismo proceso de cliente.

Con el fin de optimizar el rendimiento y la E/S de la red, así como para reducir el uso masivo de la base de datos de back-end por parte de usuarios, diseñe la aplicación cliente para que utilice una conexión única a la base de datos Jet. Comparta esta conexión sobre varios conjuntos de registros si es necesario. Esto tiene la ventaja adicional de evitar los retrasos de lectura y escritura en la aplicación cliente. De manera predeterminada, hay un retraso de cinco segundos entre la acción de escribir un valor en la base de datos y el momento en que se puede leer actualizado cuando se escribe y se lee desde dos conexiones Jet diferentes. Esto se cumple incluso si las dos conexiones residen en el mismo proceso de cliente. Al utilizar una conexión única, evita este problema.

Utilice ADO para tener acceso a una base de datos Microsoft Jet

Cuando tenga acceso a una base de datos Microsoft Jet de ADO, es aconsejable que utilice el Proveedor OLE DB de Microsoft Jet en lugar del controlador ODBC de Microsoft Access. Para obtener información acerca de este tema, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
299974 Utilizar Microsoft Jet con IIS

Desplácese a un motor de base de datos transaccional para obtener integridad adicional

A diferencia de los motores de base de datos basados en archivos, los motores de base de datos basados en servidores, como Microsoft SQL Server, procesan todas las solicitudes de varios clientes para una base de datos en el servidor. El servidor realiza el seguimiento de estas solicitudes en un registro de transacciones. Si no se puede atender una solicitud, el servidor devuelve la solicitud o no la procesa. Así se reduce el riesgo que la base de datos quede incompleta o se dañe.

Antes de actualizar desde un motor de base de datos basado en archivos a un motor de base de datos basado en servidores, debe considerar las ventajas y las desventajas. Para obtener más información acerca de cómo elegir el motor de base de datos más apropiado para sus fines, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
168549 Elegir el documento de bases de datos adecuado disponible en el Centro de descargas
Nota: aunque este documento se ha escrito para Access 97, también es de aplicación para Jet 4.0 y Access 2000.

Actualice las tablas vinculadas después de actualizar la base de datos back-end

Siempre que una base de datos de Jet contenga vínculos a un servidor de base de datos back-end ODBC y lo actualice a una versión posterior principal, debe actualizar todas las tablas vinculadas dentro de la base de datos de Jet. Por ejemplo, al actualizar el servidor de SQL Server 2000 a SQL Server 2005.

Referencias

Para obtener más información acerca de qué hacer si la base de datos ya está dañada, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
306204 Cómo solucionar problemas en una base de datos de Microsoft Access dañada

304701 Cómo solucionar problemas en una base de datos de Microsoft Access dañada

824271 Descripción de la solución de una base de datos dañada en Office Access 2003


Para obtener más información sobre otros temas tratados en el artículo anterior, haga clic en los números de artículo siguientes para ver los artículos en Microsoft Knowledge Base:
200300 Cómo sincronizar las escrituras y las lecturas con el proveedor OLE DB de Jet y ADO
283849 Cómo solucionar problemas y reparar una base de datos dañada de Access 2000 o una versión posterior
299974 Utilizar Microsoft Jet con IIS
296264 Configuración del bloqueo oportunista en Windows
129202 Explicación del bloqueo oportunista en Windows NT
304408 Cómo cerrar remotamente una aplicación de Access
300216 Cómo mantener una base de datos Jet 4.0 en buenas condiciones en Access 2000

Propiedades

Id. de artículo: 303528 - Última revisión: martes, 17 de mayo de 2011 - Versión: 9.0
La información de este artículo se refiere a:
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
Palabras clave: 
kbhowtomaster KB303528

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com