Artigo: 300216 - Última revisão: quarta-feira, 11 de Maio de 2011 - Revisão: 5.0 Como manter uma base de dados do Jet 4.0 em boas condições de funcionamento no Access 2000
Nesta páginaSumário
O Microsoft Jet é o motor de base de dados utilizado, por predefinição, pelo Microsoft Access. Este artigo proporciona uma lista dos procedimentos recomendados que podem ser utilizados para manter a base de dados do Jet em boas condições de funcionamento. Este artigo aplica-se às bases de dados em execução em ambientes de um e de vários utilizadores. PROCEDIMENTOS RECOMENDADOSEsta secção aplica-se a todas as bases de dados do Jet, quer a base de dados esteja a ser utilizada apenas por um utilizador ou por vários utilizadores através de uma rede.Verificar se o último Service Pack do sistema operativo está instaladoInstale o Service Pack mais recente do sistema operativo. Desta forma fica com a garantia de que estão instaladas as últimas correcções.Para verificar se tem instalados os últimos Service Packs do sistema operativo, visite o seguinte Web site da Microsoft: http://update.microsoft.com
(http://update.microsoft.com)
Se estiver num ambiente de rede, é importante certificar-se de que o servidor de ficheiros da rede tem instalado o Service Pack mais recente do sistema operativo, a fim de garantir de que foram implementadas as últimas correcções para o redireccionador da rede e para o sistema de ficheiros da rede.Periodicamente, a Microsoft disponibiliza Service Packs e actualizações para o Office 2000, para assegurar a manutenção do melhor desempenho e da melhor interoperacionalidade com outros programas. Estas actualizações podem ser transferidas gratuitamente no Web site de actualizações do Office, em http://office.microsoft.com (http://office.microsoft.com) . Utilize a opção Verificar existência de actualizações para verificar se existem actualizações disponíveis para o seu computador. Verificar se o último Service Pack do Microsoft Jet está instaladoInstale o Service Pack mais recente do Microsoft Jet. Desta forma fica com a garantia de que estão instaladas as últimas correcções para o Microsoft Jet. Para transferir o último Service Pack do Jet 4.0, consulte o seguinte artigo da base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):239114
(http://support.microsoft.com/kb/239114/
)
Como obter o Service Pack mais recente para o motor de bases de dados Microsoft Jet 4.0
Se está a trabalhar num ambiente de rede, tem de instalar o último Service Pack do Microsoft Jet em todos os computadores cliente. Não necessita de instalar o Service Pack do Microsoft Jet no servidor de ficheiros da rede, excepto se esse servidor também executar uma ou mais aplicações que utilizem o Microsoft Jet.Utilizar uma estrutura de base de dados eficienteUma base de dados adequadamente estruturada ajuda a melhorar substancialmente o seu desempenho. Além disso, também reduz as probabilidades de o ficheiro vir a ficar danificado. Para obter informações adicionais sobre os procedimentos recomendados para estruturar uma base de dados, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):288947
(http://support.microsoft.com/kb/288947/PT/
)
ACC2000: Where to Find Information About Designing a Database in Access Utilizar um formato de ficheiro de base de dados do Jet compatível com a versão do motor Jet que está a ser utilizadoPara melhorar o desempenho e aumentar a estabilidade, utilize uma base de dados com o formato do Microsoft Jet 4.0 quando utiliza clientes do Microsoft Jet 4.0. Da mesma forma, utilize uma base de dados com o formato do Microsoft Jet 3.0 quando utiliza clientes do Microsoft Jet 3.5, e assim por diante.A tabela seguinte mostra os formatos Jet disponíveis e qual a DLL de conversão utilizada (se for esse o caso) para lidar com esse formato quando está a utilizar um cliente do Microsoft Jet 4.0:
Versão do Access Formato Jet DLL de conversão utilizada
-------------- ---------- -------------------
Access 2.0 Jet 2.0 msrd2x40.dll
Access 95 Jet 3.0 msrd3x40.dll
Access 97 Jet 3.0 msrd3x40.dll
Access 2000 Jet 4.0 Nenhuma
Access 2002 Jet 4.0 Nenhuma
A lista seguinte mostra os clientes do motor de bases de dados do Microsoft Jet mais utilizados e a respectiva versão do motor Jet que utilizam:
Aplicação Cliente Motor Jet Utilizado Formato da BD do Jet Recomendado
------------------------- --------------- -------------------------
Access 2.0 Jet 2.0 Jet 2.0
Access 95 Jet 3.0 Jet 3.0
Access 97 Jet 3.5 Jet 3.0
Access 2000 Jet 4.0 Jet 4.0
Access 2002 Jet 4.0 Jet 4.0
DAO 3.0 Jet 3.0 Jet 3.0
DAO 3.5 Jet 3.5 Jet 3.0
DAO 3.6 Jet 4.0 Jet 4.0
Microsoft.JET.OLEDB.3.51 Jet 3.5 Jet 3.0
Microsoft.Jet.OLEDB.4.0 Jet 4.0 Jet 4.0
Controlador ODBC do Access* Jet 4.0 Jet 4.0
Em certas situações (por exemplo, quando tem aplicações Jet antigas e novas a partilhar o mesmo ficheiro de base de dados) pode não conseguir utilizar o formato de ficheiro de base de dados do Jet mais recente. Isto acontece porque os motores Jet mais antigos não conseguem ler nem escrever no formato de ficheiro de base de dados do Jet mais recente. Neste caso, tem de utilizar o formato antigo e utilizar as DLL de conversão. Evitar a utilização de caracteres e palavras reservados nos nomes de objectos e de camposEvite utilizar caracteres e palavras reservados quando atribui um nome a objectos e campos da base de dados. Em certas situações, a utilização de palavras ou caracteres reservados, sozinhos ou em combinação com outras palavras mas rodeados por espaços, pode danificar a base de dados. Para obter informações adicionais sobre as palavras e caracteres reservados do Microsoft Access, clique nos números de artigo existentes abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):209187
(http://support.microsoft.com/kb/209187/PT/
)
ACC2000: Reserved Words in Microsoft Access 296857
(http://support.microsoft.com/kb/296857/PT/
)
ACC2000: Cannot Open Visual Basic Environment from Design View of a Database Object Para obter mais informações sobre palavras e caracteres reservados, clique na Ajuda do Microsoft Access, no menu Ajuda, escreva palavras reservadas de SQL do motor de base de dados do Microsoft Jet, no Assistente do Office ou no Assistente de respostas e, em seguida clique em Procurar para ver o tópico.Compactar periodicamente a base de dados do Microsoft JetSe costuma fazer frequentemente alterações à base de dados, partes desta podem ficar fragmentadas. Assim, é conveniente executar periodicamente o utilitário de compactação da base de dados existente no Microsoft Access. Se não tem uma cópia do Microsoft Access, pode, ainda assim, compactar a base de dados utilizando o utilitário JetComp.Para obter informações adicionais sobre como obter o utilitário JetComp para o Microsoft Jet 4.0, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base): 273956
(http://support.microsoft.com/kb/273956/PT/
)
ACC2000: Utilitário de compactação Jet disponível no centro de transferências
Agende as compactações consoante a frequência e a dimensão das alterações. Se os dados não forem alterados frequentemente, não necessita de compactar muitas vezes. Se fizer alterações, inserções e eliminações frequentes compacte mais vezes. Embora não haja uma regra para determinar a frequência das compactações, a Microsoft recomenda que se estabeleça uma rotina de compactação.Os parágrafos seguintes explicam mais detalhadamente o processo de compactação utilizado pelo Microsoft Jet. Para ver uma explicação genérica sobre a compactação de bases de dados, clique no número de artigo abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base): 209769
(http://support.microsoft.com/kb/209769/PT/
)
ACC2000: Defragment and Compact Database to Improve Performance
O motor do Microsoft Jet trata um ficheiro de base de dados do Microsoft Access como uma série de blocos de 4096 bytes, tal como um sistema de ficheiros típico trata os dados num disco rígido. O conjunto completo dos registos numa tabela do Microsoft Jet é armazenado por séries destes blocos, em que cada bloco aponta para o seguinte. Cada bloco pode conter um ou mais registos, consoante o número de campos e a quantidade de dados existente em cada registo. Ao longo do tempo, à medida que se vão adicionando e eliminando registos, os blocos da tabela ficam fragmentados dentro do ficheiro da base de dados.Durante a compactação de uma base de dados do Microsoft Jet, esses blocos são "desfragmentados" e procura-se colocar cada tabela num intervalo contíguo de blocos. Isto melhora o desempenho das operações de leitura e escrita na tabela. As indexações de uma base de dados do Microsoft Access também são armazenadas em blocos de 4096 bytes, os quais podem, tal como os registos de uma tabela, ficar fragmentados. Quando uma base de dados do Microsoft Jet é compactada, o Jet actualiza as estatísticas das tabelas armazenadas dentro da base de dados. Uma estatística chave da tabela é o número de registos numa tabela. Se o número de registos nas estatísticas da tabela for muito diferente do número real de registos existentes na tabela, o desempenho pode ser fraco. Por exemplo, se as estatísticas da tabela indicarem que existe um pequeno número de registos na tabela, o utilitário de optimização do motor da base de dados Jet não utiliza os índices na tabela quando se executam procuras ou associações. Se na realidade existirem poucos registos, esta forma de actuar é mais eficiente. Mas se existir um grande número de registos, o resultado desta acção pode tornar-se totalmente ineficaz. O conceito chave aqui é que se forem adicionados, eliminados ou actualizados grandes quantidades de registos, deve proceder-se à compactação da base de dados mais frequentemente. O Microsoft Jet também optimiza as consultas armazenadas na base de dados durante a compactação, a fim de reflectir as estatísticas da tabela actualizada. Por consequência, o desempenho das consultas armazenadas também pode ser melhorado através de frequentes compactações. Fazer regularmente uma cópia de segurança do ficheiro da base de dados do Microsoft JetA frequência das cópias de segurança deve ser programada em função da quantidade de dados que poderão ser perdidos. Por exemplo, se não pode perder mais dados do que os correspondentes a um dia de trabalho, deve fazer cópias de segurança todos os dias. Se não se importa de perder os dados do trabalho correspondente a uma semana, faça as cópias de segurança semanalmente. A cópia de segurança integral do ficheiro da base de dados é a melhor forma de garantir a recuperação da base de dados do Microsoft Jet caso o ficheiro fique danificado.Importante Se estiver num ambiente de rede, deve encerrar todos os clientes do Microsoft Jet antes de fazer a cópia de segurança do ficheiro da base de dados do Microsoft Access. Se não o fizer, pode criar uma cópia de segurança com dados incompletos e inconsistentes. Teste regularmente as cópias de segurança para se certificar de que estão em boas condições. OUTROS PROCEDIMENTOS RECOMENDADOS PARA AMBIENTES DE REDEO Microsoft Jet é um sistema de bases de dados de partilha de ficheiros. Uma base de dados de partilha de ficheiros é aquela em que todo o processamento do ficheiro se realiza no cliente. Quando uma base de dados de partilha de ficheiros, tal como o Microsoft Jet, é utilizada num ambiente de vários utilizadores, podem ocorrer vários processos de leitura, escrita e bloqueio no mesmo ficheiro partilhado na rede. Se, por qualquer motivo, não for possível concluir um processo, o ficheiro pode ficar incompleto ou danificado. Quando o cliente termina inesperadamente ou quando cai a ligação de rede a um servidor são dois exemplos em que um processo pode não ficar concluído.O Microsoft Jet não se destina a ser utilizado com aplicações de servidor 24x7 muito exigentes e concorrentes, tais como servidores Web e servidores comerciais, transaccionais e de mensagens. Para este tipo de aplicações, a melhor solução é mudar para um sistema verdadeiro de base de dados de cliente/servidor, tal como o Microsoft Data Engine (MSDE) ou o Microsoft SQL Server. Quando o Microsoft Jet é utilizado em aplicações muito exigentes, tais como Microsoft Internet Information Server (IIS), os utilizadores têm relatado casos de danos na base de dados e de estabilidade, tal como o bloqueio do IIS, bem como falhas persistentes e súbitas do controlador para ligar a uma base de dados válida que requer o reinício do serviço IIS. Em seguida apresentamos uma lista de recomendações que devem ser aplicadas quando pretende partilhar um ficheiro de base de dados do Microsoft Jet (Microsoft Access) num servidor de ficheiros de rede. Bloqueios oportunistas (oplocks) no servidor de ficheiros da redeA Microsoft detectou um problema em que os bloqueios oportunistas podem aumentar o risco de danos da base de dados Jet quando o ficheiro é partilhado por dois ou mais clientes num servidor de ficheiros de rede. Este problema ocorre no Microsoft Windows NT 4.0, Microsoft Windows 2000 e nos servidores de ficheiros Novell que suportam bloqueios oportunistas. Este problema também ocorre nos clientes com o Microsoft Windows NT 4.0, Microsoft Windows 2000 e Microsoft Windows XP que acedem a um servidor de ficheiros que suporta bloqueios oportunistas.Windows 2000 Para evitar este problema em computadores com o Windows 2000, tem de instalar o Windows 2000 Service Pack 3 (SP3) no servidor de ficheiros do Windows 2000 em que o ficheiro da base de dados do Access se encontra localizado e, em seguida, em cada computador cliente com o Windows 2000 que aceda ao servidor de ficheiros do Windows 2000. Para obter informações sobre como obter e instalar o Windows 2000 SP3, consulte o seguinte artigo da base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base): 260910
(http://support.microsoft.com/kb/260910/PT/
)
Como obter o Service Pack mais recente do Windows 2000
Se tiver clientes com o Microsoft Windows 95, Microsoft Windows 98, Microsoft Windows Millennium Edition (Me) ou Microsoft Windows NT 4.0, não necessita de instalar o Service Pack mencionado no artigo Q260910 da base de dados de conhecimento sobre esses clientes.
Windows XP Para evitar o problema em computadores com o Windows XP, instale a correcção mencionada no seguinte artigo da base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base) em cada cliente com o Windows XP que aceda ao servidor de ficheiros onde se encontra a base de dados do Access. 329170
(http://support.microsoft.com/kb/329170/
)
MS02-070: Uma falha na assinatura do SMB poderá permitir a modificação da política de grupo
Se tem clientes com Microsoft Windows 95, Microsoft Windows 98, Microsoft Windows Millennium Edition (Me) ou Microsoft Windows NT 4.0, não necessita de instalar a correcção mencionada no artigo Q309376 da base de dados de conhecimento sobre esses clientes.
Desactivar o bloqueio oportunista Se está a utilizar o Windows NT 4.0, não puder instalar o Windows 2000 SP3 e a actualização de segurança ou se tiver instalado Windows 2000 SP3 e a actualização de segurança do Windows XP mas continuar a registar frequentemente danos, pode desactivar o bloqueio oportunista para impedir a ocorrência do problema. IMPORTANTE: IMPORTANTE: A desactivação do bloqueio oportunista pode piorar o desempenho de outras aplicações. Se tiver dúvidas sobre esta questão, contacte o suporte técnico do Microsoft Windows. Para obter informações adicionais sobre como desactivar o bloqueio oportunista no Windows NT 4.0, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base): 129202
(http://support.microsoft.com/kb/129202/PT/
)
PC Ext: Explanation of Opportunistic Locking on Windows NT Para obter informações adicionais sobre como desactivar o bloqueio oportunista no Windows 2000, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
296264
(http://support.microsoft.com/kb/296264/PT/
)
Configuring Opportunistic Locking in Windows 2000
Para desactivar o bloqueio oportunista num servidor de ficheiros Novell, a Microsoft recomenda que contacte o suporte técnico da Novell. Para obter informações sobre como contactar a Novell, clique no número de artigo adequado na lista seguinte para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):65416
(http://support.microsoft.com/kb/65416/PT/
)
Hardware and Software Third-Party Vendor Contact List, A-K A Microsoft fornece informações de contacto de outros fabricantes para o ajudar na obtenção de suporte técnico. Estas informações de contacto poderão ser alteradas sem aviso prévio. A Microsoft não garante o rigor das informações sobre o contacto destes fabricantes.60781 (http://support.microsoft.com/kb/60781/PT/ ) Hardware and Software Third-Party Vendor Contact List, L-P 60782 (http://support.microsoft.com/kb/60782/PT/ ) Hardware and Software Third-Party Vendor Contact List, Q-Z Questões a considerar quando se partilha uma base de dados do Microsoft JetSe possível, não partilhe um ficheiro de base de dados do Microsoft Jet que esteja guardado numa partilha de ficheiros do Microsoft Windows 95, Microsoft Windows 98 ou Microsoft Windows Millennium Edition (Me) com clientes Windows NT ou Windows 2000. Quando numa rede existem vários computadores, alguns com o Windows 95, Windows 98 ou Windows Me e outros com o Windows NT ou Windows 2000, e é necessário partilhar a base de dados com outros utilizadores da rede, a Microsoft recomenda que se guarde e partilhe o ficheiro da base de dados num servidor com o Windows NT ou Windows 2000 com o bloqueio oportunista desactivado. Se tiver computadores clientes com o Windows NT ou o Windows 2000 a partilhar um ficheiro guardado numa partilha de ficheiros com o Windows 95, Windows 98, ou Windows Me, esse ficheiro pode ficar danificado. Isto pode ocorrer mesmo quando o cliente com Windows NT ou Windows 2000 tiver o bloqueio oportunista desactivado. Este problema ainda está a ser investigado e, logo que houver mais informações, a Microsoft disponibiliza-las-á.Utilizar um servidor de ficheiros robustoCertifique-se de que tem um servidor de ficheiros robusto o suficiente para o número de utilizadores e pedidos dirigidos ao ficheiro de base de dados do Microsoft Jet. Além disso, certifique-se de que o servidor de ficheiros não está sobrecarregado com outros processos, tais como actuar como controlador de domínio do Windows, Exchange Server e SQL Server. O motivo para esta recomendação é que um administrador de rede, ou outro proprietário do servidor, pode reiniciar o computador para resolver qualquer problema com outro serviço importante (tal como o servidor de correio), ou reiniciar após a instalação de novo software, um Service Pack ou uma correcção, e esquecer-se de que a base de dados do Microsoft Jet está, nesse momento, a ser partilhada no servidor. A reiniciação do servidor de ficheiros pode provocar uma interrupção inesperada das ligações clientes à base de dados e, por consequência, causar-lhe danos. Para evitar esta interrupção, os computadores clientes devem fechar a base de dados antes de o servidor de ficheiros ser reiniciado ou antes das actualizações de software serem aplicadas.Um servidor de ficheiros robusto deve, também, ser colocado num local seguro onde não possa ser acidentalmente desligado. O servidor tem de ter uma fonte de alimentação ininterrupta (UPS) a fim de o proteger contra picos e flutuações da corrente eléctrica. O servidor de ficheiros da rede também deve ter unidades de disco de alto desempenho, uma boa placa de rede e bastante RAM, a fim de garantir a sua capacidade em lidar com todos os pedidos a ele dirigidos. Verificar a conectividade da redeCertifique-se de que tem uma rede estável e rápida com uma sólida ligação de rede ao servidor de ficheiros. Evite utilizar o Microsoft Jet numa WAN, numa ligação de modem, num FTP (ou em qualquer outro transporte de rede menos fiável). Uma vez que o Microsoft Jet é um sistema de base de dados de partilha de ficheiros, o uso de qualquer transporte de rede pouco fiável aumenta a probabilidade de bloquear um computador cliente. Isto pode aumentar as hipóteses de ocorrência de danos na base de dados.Minimizar o número de ligações feitas a partir de cada clienteSe possível, estruture cada cliente para utilizar uma, e apenas uma, ligação à base de dados do Microsoft Jet. Cada ligação a uma base de dados Jet representa um cliente independente à base de dados, mesmo quando essas ligações provêm do mesmo processo de cliente. Para optimizar o desempenho e a E/S da rede e reduzir a carga de vários utilizadores na base de dados back-end, estruture a aplicação cliente de forma a que esta utilize apenas uma ligação à base de dados Jet e, em seguida, partilhe essa ligação por vários conjuntos de registo, à medida que forem sendo necessários. Isto tem a vantagem adicional de impedir atrasos de leitura/escrita na aplicação cliente. Por predefinição, existe um intervalo de cinco segundos entre a escrita de um valor na base de dados e a leitura desse valor quando se escreve ou lê em duas ligações Jet diferentes, mesmo que essas duas ligações residam no mesmo processo de cliente. Utilizando uma única ligação, este problema é evitado.Utilizar o ADO para aceder a uma base de dados do Microsoft JetQuando aceder a uma base de dados do Microsoft Jet a partir do ADO, a Microsoft recomenda que utilize o fornecedor OLEDB do Microsoft Jet em vez do controlador ODBC do Microsoft Access. Para obter informações adicionais sobre este tópico, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):299973
(http://support.microsoft.com/kb/299973/PT/
)
ACC2000: Using Microsoft Jet with IIS Mover para um motor de base de dados transaccional a fim de obter uma maior integridadeContrariamente a um motor de base de dados baseado em ficheiros, um motor de base de dados baseado em servidor, tal como o Microsoft SQL Server, processa todos os pedidos de clientes para uma base de dados no servidor. O servidor mantém um registo desses pedidos num registo de transacções. Se, por qualquer razão, um pedido não puder ser satisfeito, o servidor volta atrás ou não processa o pedido. Isto reduz a possibilidade de a base de dados ficar incompleta ou danificada.No entanto, antes de passar de um motor de base de dados com base em ficheiro para um com base em servidor, considere as vantagens e as desvantagens dessa mudança. Para obter informações adicionais sobre a escolha do motor de base de dados mais adequado para as suas necessidades, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base): 168549
(http://support.microsoft.com/kb/168549/PT/
)
ACC97: Choosing the Appropriate Database White Paper Available in Download Center NOTA: embora este documento tenha sido escrito para o Access 97, também se aplica ao Jet 4.0 e ao Access 2000.ReferênciasPara obter informações adicionais sobre o que fazer se a base de dados ficar danificada, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
306204
(http://support.microsoft.com/kb/306204/PT/
)
ACC2000: How to Troubleshoot Corruption in a Microsoft Access Database
Para obter informações adicionais sobre os outros tópicos abordados neste artigo, clique nos números de artigo existentes abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
200300
(http://support.microsoft.com/kb/200300/PT/
)
HOWTO: Synchronize Writes and Reads with the Jet OLE DB 209137
(http://support.microsoft.com/kb/209137/PT/
)
Como detectar e resolver problemas de uma base de dados Jet 4.0 danificada no Access 2000 299973
(http://support.microsoft.com/kb/299973/PT/
)
ACC2000: Using Microsoft Jet with IIS 296264
(http://support.microsoft.com/kb/296264/PT/
)
Configuring Opportunistic Locking in Windows 2000 129202
(http://support.microsoft.com/kb/129202/PT/
)
PC Ext: Explanation of Opportunistic Locking on Windows NT
| Outros Recursos Outros Sites de Suporte
ComunidadesObtenha Ajuda AgoraTraduções de Artigos
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email
Voltar ao topo