IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Compactage de bdd dorsale [AC-2013]


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2011
    Messages : 75
    Points : 54
    Points
    54
    Par défaut Compactage de bdd dorsale
    Bonjour à tous,

    L'assoc dont je m'occupe utilise une base access organisée frontale-dorsale. 5 Postes en Frontal (.mdb = 75 Mo, assez Stable) et une base dorsale sur serveur qui après compactage fait 22 Mo mais qui certains jours passe en quelques heures à un Go.
    Il n'y a pas de requêtes dans la dorsale. Le gonflement de la dorsale est aléatoire. Certains jours il ne se passe rien, d'autres, ça explose.
    En zonant sur les forums, je vois qu'il n'est pas facile de maitriser le gonflement et qu'il vaut mieux faire un compactage.
    Grace à Developpez.com j'ai maintenant une fermeture automatique des bases frontales la nuit en cas d'inactivité de plus d'une heure (C'est généralement le cas !)
    Il n'y a donc plus d'obstacle à organiser un compactage automatique de la dorsale en fin de nuit.
    Je pense, avec une tâche planifiée vers 5 h du matin, ouvrir une petite bdd dont l'autoexec déclenche le compactage de la dorsale... mais je ne sais pas comment agir sur une base .mdb à partir d'une autre ...

    quelqu'un peut il me passer les quelques lignes de code qui vont bien pour faire cette opération.

    Merci d'avnce

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Connais-tu l'option qui consiste à ce qu'une db soit systématiquement compactée lors de sa fermeture ?

    Si tu affectes cette option à ta db dorsale, la tâche dont tu parles consiste à ouvrir la db et à la refermer aussitôt.

    j'ai maintenant une fermeture automatique des bases frontales la nuit en cas d'inactivité de plus d'une heure
    Profite de ce processus pour ouvrir et refermer la dorsale
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2011
    Messages : 75
    Points : 54
    Points
    54
    Par défaut Merci... à suivre
    Merci Claude Leloup,

    La case à cocher "compacter à la fermeture" de la base dorsale est cochée et ce depuis aussi loin que je me souvienne. Cela n'empêchait pas le fichier de grossir.

    La nouveauté est que, depuis quelques jours, les bases frontales sont programmées pour se fermer après une heure d'inactivité une fois passé 19h.

    Sais tu si la fermeture de la dernière base frontale active (et donc la disparition du fichier "madorsale.ldb") suffira à provoquer le compactage de ma dorsale ou s'il faut l'ouvrir en direct et la refermer ?

    Quoi qu'il en soit, je vais observer pendant quelques jours la prise de poids de ma dorsale et je reviendrai sur le site pour raconter ce que j'aurai observé.

    cordialement.

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    La case à cocher "compacter à la fermeture" de la base dorsale est cochée et ce depuis aussi loin que je me souvienne. Cela n'empêchait pas le fichier de grossir.
    Sais tu si la fermeture de la dernière base frontale active (et donc la disparition du fichier "madorsale.ldb") suffira à provoquer le compactage de ma dorsale ou s'il faut l'ouvrir en direct et la refermer ?
    Oui, mais pour que le compactage se déclenche à la fermeture, il faut que la base soit d’abord ouverte ! (Et pas seulement accédée en tant que dorsale.)

    Pour tester ma proposition, j’avais procédé comme ceci :
    - LaDorsale.mdb contient une table CodesPostaux, et pèse 236 Ko, je copie deux fois cette table pour la faire gonfler, je supprime les deux copies, et je referme. La DB pèse maintenant 496 Ko. Elle garderait ce poids si elle n’était pas compactée.
    - dans LaDorsale.mdb, une macro Autoexec




    - Quand LaDorsale.mdb n’est plus utilisée (donc quand LaDorsale.ldb a été détruit), je provoque l’ouverture de LaDorsale.mdb (c’est le code associé au clic sur le bouton)



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Option Compare Database
    Option Explicit
     
    Private Sub BtOuvDorsa_Click()
      Shell "C:\WINDOWS\EXPLORER.EXE " & CurrentProject.Path & "\LaDorsale.mdb", vbNormalFocus
    End Sub
    LaDorsale.mdb s’ouvre et se referme instantanément… et est donc compactée.

    Mon jeu de test en P.J.
    Fichiers attachés Fichiers attachés
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  5. #5
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2011
    Messages : 75
    Points : 54
    Points
    54
    Par défaut C'est clair
    Merci Claude Leloup.

    C'était effectivement la question que je me posais: Est-ce que "quitter la dorsale" provoque le compactage comme le fait "fermer la dorsale"

    La réponse est clairement non.

    Comme j'ai chaque nuit une tâche programmée de synchronisation avec des données qui me sont livrées de notre site web, je sais ce qui me reste à faire : ajouter une instruction à ma tache programmée pour qu'elle ouvre ma dorsale avec un paramètre dans la ligne de commande demandant à la dorsale de se refermer illico.

    La vie est belle ! Merci

  6. #6
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2011
    Messages : 75
    Points : 54
    Points
    54
    Par défaut La vie est belle.. enfin presque !
    Re bonjour Claude Leloup

    Mauvaise surprise.

    L'automatisation du compactage de la dorsale après lequel je cours se heurte à une réaction sécuritaire d'Office.

    J'ai donc, dans un fichier BAT qui s’exécute à heure fixe, une ligne du genre : p:/bdd/bdda/madorsale.bdd /x refermer. (p: est le lecteur réseau) bdd/bdda/ ma hiérarchie de répertoires. "Refermer" est le nom d'une macro qui s'exécute et qui referme la madorsale programmée pour se compacter à la fermeture.

    L'ouverture de "madorsale" est interrompue par l'affichage qui me demande si je veux vraiment ouvrir ce fichier et qui attends indéfiniment (voir capture du message en pj).
    Comment puis-je faire que mon fichier Dorsale soit reconnu comme fiable par office, ou à tout le moins, que le message ne soit pas bloquant ?

    merci de votre aide.
    Images attachées Images attachées  

  7. #7
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Désolé, je suis incompétent en cette matière (comme dans beaucoup d'autres !).

    Si un autre forumeur ne prend pas la main ici, pose ta question dans le sous-forum Sécurité, pour gagner en visibilité.

    Au plaisir de te recroiser.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  8. #8
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2011
    Messages : 75
    Points : 54
    Points
    54
    Par défaut Merci
    En tous cas, merci de ce que tu m'as apporté.
    Je vais voir si un autre forumeur prend le relais et à defaut je suivrai ta suggestion

  9. #9
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2011
    Messages : 75
    Points : 54
    Points
    54
    Par défaut Cette fois la vie est belle !
    Bonjour à tous

    Je viens de trouver un moyen simple de CONTOURNER le problème.

    Puisque, pour des raisons de sécurité, Office n'aime pas ouvrir une BDD qui sont sur un lecteur réseau, il suffit, quand on est sûr de la sécurité de la bdd, de
    • copier la dorsale du serveur vers le pc,
    • d'effectuer le compactage sur la copie sur PC puis de
    • recopier la dorsale compactée en écrasant la dorsale initiale sur le serveur...


    Un fichier .bat de 3 lignes et le tour est joué.

    Merci à tous pour votre aide

  10. #10
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Cette fois la vie est belle !
    Et en plus, c'est dimanche...

    À+
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Protection BDD dorsale
    Par fclus dans le forum Sécurité
    Réponses: 2
    Dernier message: 18/11/2011, 12h17
  2. [AC-2007] Ajout tables dans BDD dorsale
    Par fclus dans le forum Modélisation
    Réponses: 3
    Dernier message: 10/11/2011, 12h18
  3. Compactage de BDD
    Par adelsunwind dans le forum VBA Access
    Réponses: 8
    Dernier message: 13/07/2010, 10h52
  4. compactage automatique base dorsale
    Par lbar012001 dans le forum VBA Access
    Réponses: 5
    Dernier message: 31/12/2008, 15h44
  5. BDD dorsale sécurisée s'ouvre avec access sans PW
    Par electrosat03 dans le forum Sécurité
    Réponses: 19
    Dernier message: 21/12/2006, 11h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo