创建和管理表空间

2022-07-20 08:41:23 浏览数 (1)

在可插拔数据库 pdb2 中创建永久表空间 BDC_DATA,数据文件大小 10M。

设置 BDC_DATA 为 pdb2 默认表空间。

1.2 查看 pdb2 表空间信息

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,CONTENTS,LOGGING,
EXTENT_MANAGEMENT,ALLOCATION_TYPE,SEGMENT_SPACE_MANAGEMENT
from dba_tablespaces;

查看表空间对应数据文件

代码语言:javascript复制
SYS@pdb2> col tablespace_name for a10
SYS@pdb2> col file_name for a60
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,AUTOEXTENSIBLE
from dba_data_files;

1.3 查看 pdb2 当前默认表空间

代码语言:javascript复制
SYS@pdb2> col PROPERTY_NAME for a30
SYS@pdb2> col PROPERTY_VALUE for a50
SYS@pdb2> select PROPERTY_NAME,PROPERTY_VALUE from database_properties
where PROPERTY_NAME='DEFAULT_PERMANENT_TABLESPACE';

1.4 pdb2 创建表空间 BDC_DATA

代码语言:javascript复制
SYS@pdb2> create tablespace bdc_data
datafile '/u01/app/oracle/oradata/cdb1/pdb2/bdc_data01.dbf' size 10m;
SYS@pdb2> select TABLESPACE_NAME,CONTENTS,LOGGING,
EXTENT_MANAGEMENT,ALLOCATION_TYPE,SEGMENT_SPACE_MANAGEMENT
from dba_tablespaces;

查看表空间对应数据文件

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE
from dba_data_files;

设置可插拔数据库 pdb2 的默认表空间

代码语言:javascript复制
SYS@pdb2> alter pluggable database default tablespace bdc_data;
SYS@pdb2> select PROPERTY_NAME,PROPERTY_VALUE from database_properties
where PROPERTY_NAME='DEFAULT_PERMANENT_TABLESPACE';

1.6 创建测试用户、测试表查看

创建测试用户 damon 密码 oracle

代码语言:javascript复制
SYS@pdb2> grant connect,resource,unlimited tablespace to damon identified by oracle;

查看用户 damon 默认表空间

代码语言:javascript复制
SYS@pdb2> select username,default_tablespace from dba_users where username='DAMON';

创建测试表

代码语言:javascript复制
SYS@pdb2> create table damon.test as select * from user_tables where 1=2;

查看测试表对应表空间

代码语言:javascript复制
SYS@pdb2> select table_name,tablespace_name from dba_tables
where table_name='TEST' and owner='DAMON';

2 pdb2 SMALLFILE 表空间扩展

2.1 案例需求

在可插拔数据库 pdb2 中 DAMON.TEST 测试表插入数据,

模拟业务数据占用默认表空间 BDC_DATA,

使用不同方法对 BDC_DATA 表空间进行扩容。

2.2 查看当前表空间数据文件大小

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE
from dba_data_files;

2.3 测试表 DAMON.TEST 插入数据

代码语言:javascript复制
SYS@pdb2> insert into damon.test select * from user_tables;
SYS@pdb2> insert into damon.test select * from damon.test;
SYS@pdb2> /
SYS@pdb2> /
SYS@pdb2> /
SYS@pdb2> /

2.4 resize 增大数据文件大小

查看 CUST_DATA 当前数据文件大小

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE
from dba_data_files where tablespace_name='BDC_DATA';

resize 调整 bdc_data 表空间数据文件到 20M

代码语言:javascript复制
SYS@pdb2> alter database datafile 21 resize 20m;

查看 resize 后数据文件大小

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE
from dba_data_files where tablespace_name='BDC_DATA';

2.5 表空间增加数据文件

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE from dba_data_files where tablespace_name='BDC_DATA';

bdc_data 表空间增加一个 20m 大小的数据文件

代码语言:javascript复制
SYS@pdb2> alter tablespace bdc_data add datafile
'/u01/app/oracle/oradata/cdb1/pdb2/bdc_data02.dbf' size 20m;

查看表空间对应数据文件

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE
from dba_data_files where tablespace_name='BDC_DATA';

2.6 开启数据文件自动扩展

代码语言:javascript复制
SYS@pdb2> select TABLESPACE_NAME,FILE_ID,FILE_NAME,
bytes/1024/1024 MB,AUTOEXTENSIBLE
from dba_data_files where tablespace_name='bdc_DATA';

bdc_data 表空间对应的数据文件开启自动扩展

代码语言:javascript复制
SYS@pdb2> alter database datafile 21,22 autoextend on;

创建 BIGFILE 表空间

代码语言:javascript复制
SYS@pdb1> create bigfile tablespace old_data
datafile '/u01/app/oracle/oradata/cdb1/pdb1/old_data.dbf'
size 500m autoextend on maxsize 1T;
代码语言:javascript复制
select TABLESPACE_NAME,FILE_ID,FILE_NAME,
AUTOEXTENSIBLE,bytes/1024/1024 MB,MAXBYTES/1024/1024/1024 GB
from dba_data_files;
代码语言:javascript复制
SYS@pdb1> select TABLESPACE_NAME,CONTENTS,bigfile,LOGGING,
EXTENT_MANAGEMENT,ALLOCATION_TYPE,SEGMENT_SPACE_MANAGEMENT
from dba_tablespaces;

0 人点赞