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 Oracle Discussion :

Volumétrie des tables dans un dump


Sujet :

Administration Oracle

  1. #1
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut Volumétrie des tables dans un dump
    Bonjour à tous.

    Déjà je précise, je n'y connais absolument rien en Oracle.

    J'ai un fichier dump qui a été généré, à priori, avec expdp (ou un dérivé). A l'heure actuelle je suis obligé de passer par ma hiérarchie pour me faire remonter quelques tables pour développer un outil d'extraction. Il n'est pas possible de toute remonter car on a qu'une licence Express et la base complète est apparemment trop grosse.
    Je ne connais pas les tables dont j'ai besoin, j'ai justement besoin de pouvoir les analyser pour savoir si les données m'intéressent ou pas et c'est compliquer de faire rajouter des tables au fur et à mesure de l'analyse.

    Je souhaiterais me monter en local le même dump sur une licence Express aussi pour pouvoir être un peu plus autonome sans prendre le risque de flinguer le serveur de travail.
    Est-il possible de connaitre depuis le dump, sans le restaurer, la volumétrie des tables, ou tout au moins avoir la liste des tables les plus grosses afin de les exclure de la restauration ?
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  2. #2
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Si c'est un dump créé avec datapump avec la commande expdp, le plus simple est de récupérer le fichier de log généré pour avoir le nombre de lignes de chaque table et leur taille.
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  3. #3
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut


    sauf que, bien évidemment ce fichier ne m'a pas été transmis, et certainement n'a pas du être conservé
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  4. #4
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Aïe, alors dans ce cas là c'est mort, il n'est plus possible de regarder l'intérieur d'un fichier dump depuis Oracle 11 je crois.
    Essaye quand même de contacter les gens qui ont fait l'export, peut-être qu'ils n'ont pas supprimé le .log.

    Sous unix tu pourrais lancer strings sur ton fichier, c'est une commande qui affiche les caractères imprimables d'un fichier binaire. Peut-être qu'on aura des infos...

    Autrement, pas de possibilité d'accéder à la base source?
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  5. #5
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut
    Justement j'essaye de contourner le contact avec la personne qui a fait l'export et qui gère l'import sur notre serveur (mon chef pour être précis) et être un peu plus autonome car surchargé, il ne répond quelque fois que 2 jours après (et à l'air de maîtriser oracle à peine plus que moi).

    Avec un script trouvé sur le net autour de impdp, dont je n'ai pas compris grand chose, j'ai déjà réussi à extraire le "schéma". En réalité j'ai obtenu le script sql pour recréer la base, ça m'aide un peu à "pré-identifier" les tables susceptibles d'être intéressantes, mais bon, 1.4millions de lignes à analyser quand même.
    Ensuite avec un script trouvé sur notre serveur, je réimporte les tables une à une au fur et à mesure que je les identifies, pour le moment ça passe, j'ai pas atteint la limite sans doute
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  6. #6
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Tu peux copier ici le code du script dont tu parles? Ça m'intrigue
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  7. #7
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    avec le paramètre SQLFILE, tu as tout le DDL dans un fichier sql, rien n'est fait dans la base cible.
    https://docs.oracle.com/en/database/...E-9D5B75AFEED9

    Par contre, concernant le nombre de lignes, aucune info.

    Exemple avec un SQLFILE et un METRICS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    impdp $LOGINPWD DUMPFILE=$NOMFIC.dmp $OWNER LOGFILE="imp_"$NOMFIC.log METRICS=YES SQLFILE=DATA_PUMP_DIR:imp_mabase_full.sql
    Le fichier log contient le nb d'objets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    W-1 Processing object type DATABASE_EXPORT/SCHEMA/USER
    W-1      Completed 2 USER objects in 0 seconds
    ...
    W-1 Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE
    W-1      Completed 141 TABLE objects in 5 seconds
    Le fichier .sql contient la définition des objets (create table, sequence, etc...)


    Si on ne veut que les tables, et user : INCLUDE=USER,TABLE
    Par contre TABLE contient toutes les dépendances (index, trigger).
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  8. #8
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut
    Citation Envoyé par Ikebukuro Voir le message
    Tu peux copier ici le code du script dont tu parles? Ça m'intrigue
    Le script je ne l'ai pas, je ne l'ai pas conservé, mais il ressemble bien à celui donné par McM.

    Citation Envoyé par McM Voir le message
    Par contre, concernant le nombre de lignes, aucune info.
    Eventuellement, mais plus que le nombre de ligne, c'est surtout la taille en octet qui m'aurait intéressé

    Bon pour le moment, j'ai réussi à retrouver les tables qui m’intéressaient dans l’immédiat. Me reste plus qu'attendre que mon chef me les monte sur le serveur "officiel" pour que je puisse travailler
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  9. #9
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 554
    Points
    19 554
    Billets dans le blog
    25
    Par défaut
    Tu peux éditer ton fichier binaire *.dump
    Tu recherches la chaîne <OWNER_NAME>
    Là tu trouves déjà le nom de quelques schémas qui te permettront, par exemple, de ne remonter qu'un de ces schémas dans ton express
    Tu peux aussi chercher le nom des tables qui pourraient t'intéresser en recherchant ce qui suit la chaîne </OWNER_NAME><NAME>
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  10. #10
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut
    Eventuellement, encore faut-il trouver un éditeur qui veille bien ouvrir un fichier de presque 7go

    Notepad++ ne veut pas, trop gros. Le bloc note, je n'essaye pas car, même s'il y arrivait, ça prendrait 10 jours à le charger.

    Ultra-edit pourrait, mais la version démo a expiré et même en désinstallant, nettoyant, réinstallant, il ne veut plus fonctionner sans licence
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  11. #11
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Si ton fichier est sous Unix, je t'avais conseillé d'utiliser la commande strings.
    Ca a donné quoi?
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  12. #12
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut
    Moi je ne suis pas sous unix, je suis sous windows.

    Il me semble que la base chez le client est sous un émulateur unix, et encore je n'en suis pas sur. Mais je n'ai pas accès aux postes du clients, c'est mon chef qui s'en charge.
    Moi j'ai juste accès à la base monté sur une edition express sur un windows server au boulot, et comme le dump traine encore sur le serveur, je me suis fait une config identique dans une vm sur mon poste perso à la maison.
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  13. #13
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Alors là j'abandonne, tu es vraiment dans la galère
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  14. #14
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Citation Envoyé par sevyc64 Voir le message
    Il n'est pas possible de toute remonter car on a qu'une licence Express et la base complète est apparemment trop grosse.
    Il est tout à fait légal d'installer une version complète d'Oracle sur un PC personnel en tant qu'outil de formation ou de développement, bref tant qu'il n'y a pas de production dessus.

    Compte-tenu qu'il s'agit d'extraire des infos justement pour développer quelques chose, ça me paraît une solution correcte.

  15. #15
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 192
    Points : 28 073
    Points
    28 073
    Par défaut
    Légal oui, mais gratuit ?

    La version gratuite a été choisie parce qu'on fait une récup, la suivante aura lieu peut-être dans 10 ans seulement. La boite n'allait pas acheter une licence à je sais pas combien de millier d'euros pour un potentiellement oneshot.

    Maintenant, j'estime avoir perdu au moins 25h rien que du fait que je n'avais pas la totalité de la base à dispo et que je ne le savais pas. 25* mon taux horaire, ça vaut peut-être une licence basique non bridée, mais ça, on ne le sait qu'après, quand c'est trop tard.
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  16. #16
    Expert éminent
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 821
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 821
    Points : 6 443
    Points
    6 443
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Citation Envoyé par sevyc64 Voir le message
    La version gratuite a été choisie parce qu'on fait une récup, la suivante aura lieu peut-être dans 10 ans seulement. La boite n'allait pas acheter une licence à je sais pas combien de millier d'euros pour un potentiellement oneshot.
    On peut installer Une version Full Use d'Oracle pour récupérer un backup et même tourner en prod dessus le temps de réparer la base primaire. Il n'y a pas besoin de payer de licence tant qu'on ne dépasse pas les 10 jours par an. C'est là: http://www.oracle.com/us/corporate/p...ing-070587.pdf
    Cordialement,
    Franck.
    Franck Pachot - Developer Advocate Yugabyte 🚀 Base de Données distribuée, open source, compatible PostgreSQL
    🗣 twitter: @FranckPachot - 📝 blog: blog.pachot.net - 🎧 podcast en français : https://anchor.fm/franckpachot

Discussions similaires

  1. [Conception] Tri des tables dans une jointure
    Par Tonio_35 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/07/2006, 15h05
  2. Pas de MAJ des tables dans OEM
    Par LIT016 dans le forum Entreprise Manager
    Réponses: 2
    Dernier message: 08/05/2006, 00h08
  3. Réponses: 6
    Dernier message: 16/03/2006, 18h32
  4. Réponses: 7
    Dernier message: 26/01/2006, 12h19
  5. Paramètre initial extent des tables dans la commandes IMP
    Par bobunny dans le forum Import/Export
    Réponses: 9
    Dernier message: 20/10/2004, 16h32

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