asp classic - pilotes - Asp Access db: Erreur de moteur de base de données Microsoft JET '80004005' Erreur non spécifiée



peut pas (1)

La base de données Access n'a jamais été créée pour le trafic à haut volume, il est probable qu'elle se bloque juste à cause de la quantité de requêtes.

Vous devriez vraiment passer à de vraies bases de données, ces jours-ci vous en avez beaucoup gratuitement, y compris SQL Server Express, MySQL et bien plus encore.

En attendant, vous pouvez passer en revue votre code et vous assurer de:

  1. Fermez toujours le jeu d'enregistrements juste après l'avoir utilisé, puis en le réglant sur rien

    Do Until oRS.EOF
        'do your stuff...
        oRS.MoveNext
    Loop
    
    'Always close after use
    oRS.Close
    Set oRS = Nothing
  2. Idem pour l'objet Connection: fermez et disposez quand vous en avez fini avec.

  3. Plusieurs fois, les pages utilisent Redirect - assurez-vous de fermer et de disposer avant de rediriger par exemple

    If oRS.EOF Then
        'Always close after use
        oRS.Close
        Set oRS = Nothing
    
        Response.Redirect("Error.asp?v=nouser")
    End If
    
    'do your stuff...
    
    'Always close after use
    oRS.Close
    Set oRS = Nothing

Le serveur est dédié et j'ai un accès à distance.

Nous avons personnalisé ASP CMS avec base de données Access et nous utilisons des pages d'erreur personnalisées pour "mod rewrite". Cela fonctionne très bien.

Ce site est disponible en 6 langues différentes et chaque langue a son propre domaine et tous se connectent à la même base de données.

Le problème est, j'obtiens cette erreur toutes les quelques heures:

Erreur de moteur de base de données Microsoft JET '80004005'
Erreur non spécifiée

Après avoir reçu cette erreur, je dois redémarrer IIS ou modifier les "Paramètres des pages d'erreur" en erreur détaillée, puis le redéfinir sur Personnalisé. Après ça ça fonctionne bien.

J'ai le moniteur de processus installé et je trace le processus w3wp.exe.

Lorsque l'erreur se produit j'ai eu accès refusé sur HKLM\SOFTWARE\Wow6432Node\Microsoft\Jet\4.0\Engines .

Je vous remercie.