Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2008, 15h33   #1
Invité de passage
 
Inscription : janvier 2006
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 13
Points : 2
Points : 2
Par défaut Place disponible dans un block oracle

Place disponible dans un block oracle

Bonjour
J’ai une base oracle 9.2.0.8 et j’aimerais savoir comment connaitre la place disponible dans un block oracle.

C’est parce que je veux ajouter 2 colonnes à une table de 68 millions de lignes. Et je n’aimerais pas qu’il y ait trop de « chained rows » après l’ajout de ces colonnes.

J’aimerais donc inspecter l’espace restant dans les blocs avant d’ajouter ces colonnes.

Merci

PS : si vous voulez des détailles :
Taille des blocs : 8Ko et pctfree 10%
aujourdhui 2000 chained row / 68 000 000 de lignes
omistler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 22h24   #2
Membre confirmé
 
Inscription : juillet 2007
Messages : 357
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 357
Points : 226
Points : 226
Salut ,

Je connais pas la reponse excate a ton probleme mais j ai deja du par contre faire la meme chose que toi . Pour justement ne pas me soucier de ca j ai cree les colonnes et mis mes valeurs dedans , ensuite export - supression - import.
ZashOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2008, 13h40   #3
Membre chevronné
 
Avatar de 13thFloor
 
Homme
DBA Oracle freelance
Inscription : janvier 2005
Messages : 558
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 45
Localisation : France

Informations professionnelles :
Activité : DBA Oracle freelance

Informations forums :
Inscription : janvier 2005
Messages : 558
Points : 718
Points : 718
Si la table fait partie d'un tablespace en ASSM, tu peux utiliser le package dbms_space.space_usage après avoir analyser la table.

Exemple de code :
Code :
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
 
declare
              v_unformatted_blocks number;
              v_unformatted_bytes number;
              v_fs1_blocks number;
              v_fs1_bytes number;
              v_fs2_blocks number;
              v_fs2_bytes number;
              v_fs3_blocks number;
              v_fs3_bytes number;
            v_fs4_blocks number;
            v_fs4_bytes number;
            v_full_blocks number;
            v_full_bytes number;
        begin
          dbms_space.space_usage ('SCHEMA', 'NOM_DE_TABLE', 'TYPE_D_OBJET', v_unformatted_blocks,
          v_unformatted_bytes, v_fs1_blocks, v_fs1_bytes, v_fs2_blocks, v_fs2_bytes,
          v_fs3_blocks, v_fs3_bytes, v_fs4_blocks, v_fs4_bytes, v_full_blocks, v_full_bytes);
          dbms_output.put_line('Unformatted Blocks  = '||v_unformatted_blocks);
          dbms_output.put_line('0-25% free space    = '||v_fs1_blocks);
          dbms_output.put_line('25-50% free space   = '||v_fs2_blocks);
          dbms_output.put_line('50-75% free space   = '||v_fs3_blocks);
          dbms_output.put_line('75-100% free space  = '||v_fs4_blocks);
          dbms_output.put_line('Full Blocks         = '||v_full_blocks);
   end;
/
Tu auras le taux d'occupation des blocs de la table par tranche de 25% avec les blocs pleins et ceux jamais touchés.

Et il me semble qu'en 9208 c'est moins buggué qu'en 9206.
13thFloor est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h53.


 
 
 
 
Partenaires

Hébergement Web