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 :

Lenteur base de données depuis copie des tables avec SQLDEVLOPER [11gR2]


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 716
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 716
    Par défaut Lenteur base de données depuis copie des tables avec SQLDEVLOPER
    Bonsoir

    J'ai copié les tables de la base1 en Oracle11R2 vers la base2 Oracle11R2 avec SQLDEVLOPPER et depuis ma base2 semble tres lente ?
    J'ai rebuildé tous les index, mais sans résultats ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    1 pour le rebuild des index
    SELECT ' ALTER INDEX ' || INDEX_NAME || ' REBUILD ; '
    FROM USER_INDEXES 
     
     
    Les resultats de rapidite me semble bien long ?
    select a.begin_time, a.end_time, round(((a.value + b.value)/131072),2) "GB per sec"
    from v$sysmetric a, v$sysmetric b
    where a.metric_name = 'Logical Reads Per Sec'
    and b.metric_name = 'Physical Reads Direct Per Sec'
    and a.begin_time = b.begin_time;
     
    01/06/17	01/06/17	2,36
    01/06/17	01/06/17	2,35
     
     
      select to_char(begin_time,'hh24:mi') time, round( value * 10, 2) "Response Time (ms)"
         from v$sysmetric
         where metric_name='SQL Service Response Time';
     
    06:55	10,52
     
     
    Puis un full stat
    EXECUTE DBMS_STATS.GATHER_SCHEMA_STATS(OWNNAME=>'mabase',DEGREE=>16, CASCADE=>TRUE);
    Merci de votre aide

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    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
    Billets dans le blog
    4
    Par défaut
    As-tu lancé les stats sur tes tables de la base 2 ?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 716
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 716
    Par défaut
    bonsoir

    Je viens de lancer un full stat, je verrais cela mardi, c'est une base de test

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 716
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 716
    Par défaut
    la commande est toujours aussi lente ce matin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select to_char(begin_time,'hh24:mi') time, round( value * 10, 2) "Response Time (ms)"
         from v$sysmetric
         where metric_name='SQL Service Response Time';
    27,22

  5. #5
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Collectez plus d'infos via AWR si vous avez la licence ou statspack ou encore via la trace étendu d'un traitement lent.

  6. #6
    Membre émérite Avatar de 13thFloor
    Homme Profil pro
    DBA Oracle freelance
    Inscrit en
    Janvier 2005
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle freelance

    Informations forums :
    Inscription : Janvier 2005
    Messages : 670
    Par défaut
    Hello,
    dans ce cas j'ai pour habitude de récupérer le sql_id de la requête et de visualiser sont historique d'exécution. Si hash_value différent, alors vérifier les steps différents dans le plan d'exécution et les objets ayant de mauvaises cardinalité et/ou des nouvelles statistiques.
    Sinon, en mode "fast", un petit refresh des stats sur les fixed tables peut aider :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select count(*) from sys.tab_stats$;
    exec DBMS_STATS.GATHER_FIXED_OBJECTS_STATS
    select count(*) from sys.tab_stats$;
    Sur une de mes bases (en 11.2.0.4) c'est intantané :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    -------------------------------------------------------------------------------
    | Id  | Operation        | Name       | Rows  | Bytes | Cost (%CPU)| Time     |
    -------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT |            |     5 |   245 |     1 (100)| 00:00:01 |
    |*  1 |  FIXED TABLE FULL| X$KEWMDRMV |     5 |   245 |     1 (100)| 00:00:01 |
    -------------------------------------------------------------------------------
    Predicate Information (identified by operation id):
    ---------------------------------------------------
       1 - filter("NAME"='SQL Service Response Time' AND "FLAG1"=1 AND
                  ("GROUPID"=2 OR "GROUPID"=3) AND "INST_ID"=USERENV('INSTANCE'))
    Idem en 12.1.0.2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    -------------------------------------------------------------------------------
    | Id  | Operation        | Name       | Rows  | Bytes | Cost (%CPU)| Time     |
    -------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT |            |     2 |    96 |     8 (100)| 00:00:01 |
    |*  1 |  FIXED TABLE FULL| X$KEWMDRMV |     2 |    96 |     8 (100)| 00:00:01 |
    -------------------------------------------------------------------------------
    Predicate Information (identified by operation id):
    ---------------------------------------------------
       1 - filter("NAME"='SQL Service Response Time' AND "FLAG1"=1 AND
                  ("GROUPID"=2 OR "GROUPID"=3) AND "INST_ID"=USERENV('INSTANCE'))

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/04/2013, 20h41
  2. liaison entre bases de données paradox de 2 tables avec (X.N) (X.N)
    Par saidihno dans le forum Bases de données
    Réponses: 1
    Dernier message: 01/06/2010, 22h57
  3. Réponses: 8
    Dernier message: 14/02/2008, 18h04
  4. Réponses: 2
    Dernier message: 26/06/2007, 16h23
  5. Réponses: 5
    Dernier message: 25/04/2007, 11h34

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