在Oracle数据库中,一个数据库由多个表空间组成,而表空间可以由多个数据文件组成的,数据文件是真正存放数据库数据的。一个数据文件就是一个硬盘上的文件。表和索引中的数据在物理上是被存放在数据文件中的。当查询表中数据的时候,如果内存中没有该表的数据,那么Oracle数据库的服务器进程将读取该表所在的数据文件,然后把数据存放到内存中。
视频讲解如下:
通过下面的语句可以查看当前数据库中存在的数据文件和对应的表空间:
SQL> select file_name,tablespace_name from dba_data_files;
输出的信息如下图所示。
当表空间中的数据文件写满时,可以通过下面的语句往表空间中添加新的数据文件。例如,往users表空间中添加一个10M大小的数据文件。
SQL> alter tablespace users add datafile '/u01/app/oracle/oradata/ORCL/users02.dbf' size 10M;
执行下面的语句重新查看Oracle数据库的数据文件信息。
SQL> select FILE_NAME,TABLESPACE_NAME,BYTES from dba_data_files;
输出的信息如下图所示。