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 :

Insert en mode NOLOGGING


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut Insert en mode NOLOGGING
    Bonjour,

    j'aurais souhaité savoir si pour faire un insert-select en mode nologging il était nécessaire au préalable de passer la table en MODE NOLOGGING ou bien en mettant /*+ APPEND NOLOGGING */ au moment de l'insert ça suffisait?

    PS: je suis sur une base Orcle 9.2.0.8

  2. #2
    Membre émérite
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2007
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2007
    Messages : 419
    Par défaut
    Je crois que si tu fais un insert avec un hint /*+ APPEND NOLOGGING */ et que ta table est en mode logging, le unrecoverable_time de v$datafile ne change pas après l'insert, le paramètre logging de la table semblerait donc prévaloir sur le celui de l'ordre donné.
    Je dirais qu'il faut changer l'attribut de la table en nologging. Mais j'attends avec impatience, ou que tu testes, ou l'avis des experts.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Par défaut
    Ci-dessous un peiti test. l'information sur l'espace est obtenue par dbms_space.unused_space.
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    drop table t purge
     
    drop table t purge succeeded.
    create table t as select * from dept nologging
     
    create table t as select * from dept nologging succeeded.
     
    Objet = scott.t
    -------------------------
    total_blocs ............. = 8
    total_octets ............ = 65536
    unused_blocs ............ = 4
    unused_octets ........... = 32768
    hwm_file_id ............. = 5
    hwm_extent_head ......... = 77497
    hwm_block_in_extent ..... = 4
     
    select count(*) from t
     
    COUNT(*)                                                                                                                                
    --------                                                                                                                                
    11                                                                                                                                
     
    1 rows selected
    select file#, unrecoverable_time, unrecoverable_change#, first_nonlogged_scn, first_nonlogged_time
    from v$datafile
    where file# = 5
     
    FILE#  UNRECOVERABLE_TIME  UNRECOVERABLE_CHANGE#  FIRST_NONLOGGED_SCN  FIRST_NONLOGGED_TIME                                                                                                                        
    -----  ------------------  ---------------------  -------------------  --------------------                                                                                                                                                     
    5      2008-03-05          6526455                0                                                                                                
     
    select logging
    from dba_tables
    where table_name = 'T'
      and owner = 'SCOTT'
     
     
    LOGGING                                                                                                                                
    -------                                                                                                                                
    YES                                                                                                                                
     
    1 rows selected
    insert /*+ append nologging */
    into t
    select * from t
     
    insert /*+ append nologging */
    into t
    select * from t succeeded.
    commit
     
    commit succeeded.
     
    Objet = scott.t
    -------------------------
    total_blocs ............. = 8
    total_octets ............ = 65536
    unused_blocs ............ = 3
    unused_octets ........... = 24576
    hwm_file_id ............. = 5
    hwm_extent_head ......... = 77497
    hwm_block_in_extent ..... = 5
     
    select file#, unrecoverable_time, unrecoverable_change#, first_nonlogged_scn, first_nonlogged_time
    from v$datafile
    where file# = 5
     
    FILE#  UNRECOVERABLE_TIME  UNRECOVERABLE_CHANGE#  FIRST_NONLOGGED_SCN  FIRST_NONLOGGED_TIME                                                                                                                        
    -----  ------------------  ---------------------  -------------------  --------------------                                                                                                                                                      
    5      2008-03-05          6526455                0                                                                                                                                          
     
    alter table t nologging
     
    alter table t nologging succeeded.
    select logging
    from dba_tables
    where table_name = 'T'
      and owner = 'SCOTT'
     
     
    LOGGING                                                                                                                                
    -------                                                                                                                                
    NO                                                                                                                                
     
    1 rows selected
    insert /*+ append nologging */
    into t
    select * from t
     
    insert /*+ append nologging */
    into t
    select * from t succeeded.
    commit
     
    commit succeeded.
     
    Objet = scott.t
    -------------------------
    total_blocs ............. = 8
    total_octets ............ = 65536
    unused_blocs ............ = 2
    unused_octets ........... = 16384
    hwm_file_id ............. = 5
    hwm_extent_head ......... = 77497
    hwm_block_in_extent ..... = 6
     
    select file#, unrecoverable_time, unrecoverable_change#, first_nonlogged_scn, first_nonlogged_time
    from v$datafile
    where file# = 5
     
    FILE#  UNRECOVERABLE_TIME  UNRECOVERABLE_CHANGE#  FIRST_NONLOGGED_SCN  FIRST_NONLOGGED_TIME                                                                                                                        
    -----  ------------------  ---------------------  -------------------  --------------------                                                                                                                                                                                      
    5      2008-03-05          6526523                0

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 190
    Par défaut
    bonjour,
    est ce que vous pouvez nous fournir la definition ou un toto à propos de nologging
    merci

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    Mais ils indiquent quoi ces champs: UNRECOVERABLE_TIME et UNRECOVERABLE_CHANGE# ???

    Comment savoir si la MAJ des redo a été effectué après un insert ou pas?

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Voir le tableau sur AskTom si on connaît le code SQL concerné. Sinon la seule méthode que je connais consiste à restaurer la base en utilisant les archives logs et de rechercher les objets corrompus

Discussions similaires

  1. Insertion en mode bulk en talend toraclebulkexec, ctl file
    Par fetano dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 12/07/2014, 16h39
  2. [11gR2] INSERT SELECT en NOLOGGING & APPEND
    Par devkais dans le forum Oracle
    Réponses: 15
    Dernier message: 10/07/2013, 22h46
  3. Empêcher une insertion (en mode passif)
    Par lafouine dans le forum PL/SQL
    Réponses: 1
    Dernier message: 14/03/2011, 10h38
  4. table en mode insertion et bouton enabled = true
    Par marie253 dans le forum Bases de données
    Réponses: 7
    Dernier message: 09/09/2004, 14h03
  5. table not in edit or insert mode !
    Par freud dans le forum Bases de données
    Réponses: 4
    Dernier message: 24/12/2003, 22h18

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