-
les tables space pleins
Bonjour,
J'utilise Oracle express edition et j'ai rajouté beaucoup de données dans la base puis j'ai vidé la table.
Le problème est que toutes les tablesspaces sont presque a 100%, j'ai touvé sur le net que DELETE ne libère pas les extents et il fallait que je fasse ALTER TABLE xxx MOVE;
J'ai alors libéré de la mémoire mais très peu je suis donc au même niveau !
J'espère que quelqu'un sait comment faire pour libérer l'espace utilisé par je ne sais qui ?
merci
-
Avec quelle commande tu as vidé tes tables?
Pour vider les tables et récupérer l'espace, il faudra utiliser la commande suivante :
Code:
TRUNCATE TABLE ma_table;
La commande "ALTER TABLE xxxx MOVE" sert à réorganiser/déplacer une table
Rachid
-
oui en effet c avec cette commande que j'ai vidé la table. Et c'est dans cette discutions où cette commande a été proposé.
http://www.developpez.net/forums/d64...s-gros-delete/
-
Dans ma quête de la solution je vais essayer une solution un peu brutale!
En effet, j'ai fait un export avec exp dans un fichier .dump et je souhaite effacer le contenu de toutes les tables, puis récupérer tout du fichier.dump.
Quelqun sait comment faire pour faire cette opération et sans dommage collatéral.
Merci
-
Bonjour,
Si tu es sûr de ton dump,
1- dropper les users concernés par la réorg. (radical mais propre)
2 - recréer avec les droits, les default tablespaces et les quotas qui vont bien
3 -imp fromuser touser
je n'ai pas bien compris si le contenu des tables t'intéresse ou pas.
et puis, peut-être vérifier avant de dropper ce qui se passe sur ces tables : est-ce qu'un initial + (un minextents fois le nextextent) ne seraient-ils pas trop gros? (je ne sais pas du tout comment est organisé l'espace avec l'edition express)
-
oui enfin :
- EXP des tables du schéma
- TRUNCATE de toutes les tables
- désactivation des contraintes et trigger
- IMP
- activation des contraintes et trigger
C'est nettement plus simple :mrgreen:
-
filescan n'a pas dit que le truncate n'avait pas désalloué l'espace?
-
C'est peut-être ce qu'il a cru mais c'est forcément pas le cas :P
-
Merci pour vos réponses et désoler de répondre aussi tard car oracle ma rendu malade et ma cloué au lit.:cry:
Pour ce qui concerne le truncate il n'a pas désaloué l'espace.
J'ai réglé le problème en faisant un export puis j'ai désinstallé oracle (car même le drop user ne libéré pas assez d'espace) puis j'ai simplement fait un imp après l'install!!
Mais ce phénomène reste pour moi un mystère ? Même si je connais pas la cause du problème je marque comme résolu mais si quelqu'un a une explication je suis preneur.
-
si la table n'est pas au bout du tablespace, il n'y a pas de raison que ça aide à réduire la taille de celui-ci c'est tout :?
-
Désolé mais je n’ai pas bien compris cette raison? Comment la position de la table peut influer?
-
Tout simplement que tu ne peux réduire la taille d'un datafile que jusqu'au dernier bloc utilisé. Si un bloc est utilisé en fin de fichier, alors tu ne pourras pas le réduire... et ça à part en faisant une réorganisation (move dans un tablespace temporaire de tous les objets et move dans le tablespace d'origine) tu ne peux pas t'en prémunir... sauf si tu fais un TRUNCATE de toutes les tables de ce tablespace naturellement ;)
-
Ah merci beaucoup c'est très pratique d'avoir cette info:ccool: