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 :

Question sur delete. [Fait]


Sujet :

Administration Oracle

  1. #1
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 47
    Par défaut Question sur delete.
    Bonjour,

    Le produit: Oracle 10.2.0.3 sur Windows Server 2003

    J'ai une table qui contient actuellement 4 millions d'enregistrements.
    Celle-ci contient les coordonnées d'ouvrages pour un SIG.
    De temps à autre, je doit réintégrer des ouvrages, donc effacer un grand nombre de données.

    On a lancé une suppression hier vers 17h (à peut près 5000 lignes), et ce matin, on a découvert que ces suppressions avait bloquer toutes les autres opérations sur la base ! et elle tournait toujours ! On a du annuler la suppression pour que les autres puissent bosser !

    Comment faire pour accélérer les choses ?
    Augmenter l'UNDO (ou le supprimer) ?
    Augmenter un buffer ?

    Cette table contient plusieurs foreign key , donc faire un copie de cette table puis supprimer/renommer semble complexe.

    Là, on ne sait plus quoi faire et le besoin de plus en plus important !

    Au secours !

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    La colonne qui sert de critère pour filtrer les lignes à deleter n'est probablement pas indexée. Vérifies le plan d'exécution. Pour 5000 lignes ce serait surprenant que les undos soient en cause à moins que tu as du delete cascade à gogo et les FK non indexées

  3. #3
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 47
    Par défaut
    Citation Envoyé par orafrance Voir le message
    La colonne qui sert de critère pour filtrer les lignes à deleter n'est probablement pas indexée. Vérifies le plan d'exécution. Pour 5000 lignes ce serait surprenant que les undos soient en cause à moins que tu as du delete cascade à gogo et les FK non indexées
    La colonne de critère est bien indexé, mais pas une FK vers une autre table (liaison de type 1/1), je l'indexe dès qu'elle est dispo et je teste.

  4. #4
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 47
    Par défaut
    Je vient d'ajouter l'indexe manquant sur ma base test (10G sur Linux).

    Total :6331 enregistrement dans cette table.
    A supprimer 909


    J'en suis à 20mn....

    Comprend pas !

    Je suis bon pour faire un stage oracle sur le tuning ?

  5. #5
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    sans trace ou au moins les explain plan j'vois pas comment on pourrait t'aider

  6. #6
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 47
    Par défaut
    Citation Envoyé par orafrance Voir le message
    sans trace ou au moins les explain plan j'vois pas comment on pourrait t'aider
    Comment on peut faire ça ?
    Je peut générer mes requêtes en dehors de mon développement, et les faire exécuter avec un applis type SqlDevelopper ou TOAD

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par pconrad Voir le message
    Comment on peut faire ça ?
    Je remplace google pour te fournir le lien suivant
    http://oracle.developpez.com/guide/tuning/tkprof/

Discussions similaires

  1. question sur new et delete
    Par yann458 dans le forum C++
    Réponses: 15
    Dernier message: 09/08/2014, 20h52
  2. Question sur delete
    Par deubelte dans le forum Débuter
    Réponses: 7
    Dernier message: 17/02/2012, 19h19
  3. Question sur l'éternel delete de Java :-)
    Par threshold dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 02/01/2008, 18h42
  4. Question sur les tables inserted et deleted
    Par critok dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 27/06/2006, 23h03
  5. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 17h11

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