web-dev-qa-db-fra.com

ORA-01653: impossible d'étendre la table dans l'espace de table ORA-06512

J'ai essayé de générer des données de test en exécutant le code SQL suivant.

BEGIN    
  FOR i IN 1..8180 LOOP
    insert into SPEEDTEST
    select 'column1', 'column2', 'column3', 'column4', 'column5', 'column6', 'column7', 'column8', 'column9', 'column10', 'column11', 'column12', 'column13', 'column14', 'column15', 'column16', 'column17', 'column18', 'column19', 'column20', 'column21', 'column22', 'column23', 'column24', 'column25', 'column26', 'column27', 'column28', 'column29', 'column30', 'column31', 'column32', 'column33', 'column34', 'column35', 'column36', 'column37', 'column38', 'column39', 'column40', 'column41', 'column42', 'column43', 'column44', 'column45', 'column46', 'column47', 'column48', 'column49', 'column50', 'column51', 'column52', 'column53', 'column54', 'column55', 'column56', 'column57', 'column58', 'column59', 'column60', 'column61', 'column62', 'column63', 'column64', 'column65', 'column66', 'column67', 'column68', 'column69', 'column70', 'column71', 'column72', 'column73', 'column74', 'column75', 'column76', 'column77', 'column78', 'column79', 'column80', 'column81', 'column82', 'column83', 'column84', 'column85', 'column86', 'column87', 'column88', 'column89', 'column90', 'column91', 'column92', 'column93', 'column94', 'column95', 'column96', 'column97', 'column98', 'column99', 'column100', i from dual;
  END LOOP;
END;
/
commit;

et cela m'a donné l'erreur suivante:

ORA-01653: unable to extend table LEGAL.SPEEDTEST by 128 in tablespace LEGAL_DATA
ORA-06512: at line 4

Ce qui indique que je n’ai plus d’espace, comment puis-je en ajouter et comment en connaître le montant? Qu'est-ce que 128 signifie?

42
Matas Vaitkevicius

Ajoutez simplement un nouveau fichier de données pour le tablespace existant

ALTER TABLESPACE LEGAL_DATA ADD DATAFILE '/u01/oradata/userdata03.dbf' SIZE 200M;

Pour connaître l'emplacement et la taille de vos fichiers de données:

SELECT FILE_NAME, BYTES FROM DBA_DATA_FILES WHERE TABLESPACE_NAME = 'LEGAL_DATA';
51
Mihai

Vous pouvez également activer autoextend pour l'ensemble de la base de données à l'aide de cette commande:

ALTER DATABASE DATAFILE 'C:\ORACLEXE\APP\Oracle\ORADATA\XE\SYSTEM.DBF'
AUTOEXTEND ON NEXT 1M MAXSIZE 1024M;

Il suffit de changer le chemin du fichier pour qu'il pointe vers votre fichier system.dbf.

Crédit ici

37
Celt