Každý tabulkový prostor má jeden nebo více datových souborů, které používá k ukládání dat.
Maximální velikost datového souboru závisí na velikosti bloku databáze. Domnívám se, že ve výchozím nastavení vám zbývá maximálně 32 GB na datový soubor.
Chcete-li zjistit, zda je skutečný limit 32 GB, spusťte následující:
select value from v$parameter where name = 'db_block_size';
Porovnejte výsledek, který získáte, s prvním sloupcem níže, a to bude indikovat, jaká je vaše maximální velikost datového souboru.
Mám Oracle Personal Edition 11g r2 a ve výchozí instalaci měl velikost bloku 8 192 (32 gb na datový soubor).
Block Sz Max Datafile Sz (Gb) Max DB Sz (Tb)
-------- -------------------- --------------
2,048 8,192 524,264
4,096 16,384 1,048,528
8,192 32,768 2,097,056
16,384 65,536 4,194,112
32,768 131,072 8,388,224
Tento dotaz můžete spustit, abyste zjistili, jaké datové soubory máte, k jakým tabulkovým prostorům jsou přidruženy a na jakou jste aktuálně nastavili maximální velikost souboru (která nesmí překročit výše zmíněných 32 gb):
select bytes/1024/1024 as mb_size,
maxbytes/1024/1024 as maxsize_set,
x.*
from dba_data_files x
MAXSIZE_SET je maximální velikost, na kterou jste nastavili datový soubor. Relevantní je také to, zda jste nastavili možnost AUTOEXTEND na ON (její název odpovídá tomu, co napovídá).
Pokud má váš datový soubor nízkou maximální velikost nebo není zapnuté automatické rozšíření, můžete jednoduše spustit:
alter database datafile 'path_to_your_file\that_file.DBF' autoextend on maxsize unlimited;
Pokud je však jeho velikost na/blízko 32 GB, je zapnuté automatické rozšíření, pak ano, potřebujete další datový soubor pro tabulkový prostor:
alter tablespace system add datafile 'path_to_your_datafiles_folder\name_of_df_you_want.dbf' size 10m autoextend on maxsize unlimited;