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

Administration MySQL Discussion :

Archiver BD


Sujet :

Administration MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de MANU_2
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 417
    Par défaut Archiver BD
    Je voudrais créer une archive d'une BD.

    Pour copier les enregistrement de BD1 vers BD2:
    boucle
    - SELECT BD1
    - INSERT INTO BD2
    - DELETE BD1

    ou il y a une solution plus simple ?

  2. #2
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 890
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 890
    Par défaut
    En fait pour MySQL, si tu as accès aux fichiers, tu peux directement sauvegarder la structure de fichiers correspondants à ta base.

    Renseigne toi dans la doc de la version de ton MySQL sur les moyens de BACKUP qu'ils proposent

  3. #3
    Membre éclairé Avatar de MANU_2
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 417
    Par défaut
    Ce n'est pas une sauvegarde de la BD que je veux faire.

    C'est la partie de la BD1 qui ne servent pas va être migrer vers la BD2 pour être consulter si besoin.

    C'est un archivage pas une sauvegarde.

  4. #4
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 890
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 890
    Par défaut
    Ah ok, autant pour moi Le terme que j'aurais employé serait alors plutôt "Historisation", selon moi archivage implique la notion d'archive, qui en informatique se traduit par compression et stockage externe. Mais un débat sur les termes n'est pas ce que tu attends

    Ton fonctionnement m'a l'air donc correct, une petite optimisation pour les deux premières étapes serait d'utiliser le insert-select.

    Mais je pense que ça dépend de l'utilité que tu as. Si par exemple il s'agit d'historiser des données qui seront peu consultées, pour gagner en performance dans la base 1 et en se moquant des performances de la base 2, ok ça marche. Ca allège les index, donc les temps de réponse sont bien meilleur.

    Sinon, si il s'agit seulement de "pouvoir préciser quelles sont les valeurs figurant dans l'historique ou non", peut-être que gérer deux bases peut devenir pénible, surtout dans le cas de requêtes complexes. Tu pourrais donc auquel cas utiliser un champ supplémentaire dans ta table, par exemple un booleen "histo", que tu incluerais dans toutes tes requêtes afin de filtrer. Tu ne perdras pas beaucoup en vitesse d'execution, mais par contre en facilité de gestion, tu y gagneras énormément.

    Bon courage

  5. #5
    Membre éclairé Avatar de MANU_2
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 417
    Par défaut
    Non, je ne vais pas faire de débat sur les termes.

    T'inquiète pas, la BD sera peu consulté.

    Je note la petite optimatisation.

  6. #6
    Membre éclairé Avatar de MANU_2
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 417
    Par défaut
    Avec mysql_select_db, on peut choisir qu'une seule BD.

    Comment on fait pour avoir accès à 2 BD (sur la même connection) ?
    INSERT ...BD2 SELECT ...BD1 ?

    ou

    Y a-t-il une astuce pour déplacer les enregistrement d'une DB vers l'autre ?

  7. #7
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 890
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 890
    Par défaut
    Hmm excellente question, peut-être ( mais je suis pas sûr ) un prefixage des tables avec le nom de la base pourra marcher, mais oops il se peut que tu aies deux bases avec le même nom ?

  8. #8
    Membre éclairé Avatar de MANU_2
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 417
    Par défaut
    J'ai 2 BD avec un nom différents et chaque table (des 2 BD) a un nom unique.
    Donc je n'ai aucune confusion dans le nommage.

    Sinon, au pire, je met les tables d'archivage (historique) dans la même BD et comme çà j'aurais qu'une seul BD.
    Es ce une bonne solution ?

  9. #9
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 890
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 890
    Par défaut
    Je pense qu'il vaut mieux avoir une seule BD par application personnellement. Ca simplifie énormément le travail.

  10. #10
    Membre éclairé Avatar de MANU_2
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 417
    Par défaut
    Ok, je vais tout mettre dans une seul BD

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    create table matable engine=archive as select * from maSecondeBase.matable;
    Bonne chance

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

Discussions similaires

  1. [Archive] Quel est votre langage de programmation préféré ? (2004..2008)
    Par Idelways dans le forum Débats sur le développement - Le Best Of
    Réponses: 403
    Dernier message: 04/02/2009, 00h56
  2. [opentool][Archive]Constuire sans wizard
    Par Mobaladje dans le forum JBuilder
    Réponses: 3
    Dernier message: 03/05/2004, 17h57
  3. supprimer et archiver données de certains champs
    Par tomm dans le forum Bases de données
    Réponses: 11
    Dernier message: 10/03/2004, 08h13
  4. Archive::Zip
    Par Cyspak dans le forum Modules
    Réponses: 2
    Dernier message: 09/09/2003, 13h34

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