Oracle基础知识之数据字典和表空间

一、数 据 字 典

数据字典:是Oracle数据库的核心组件,它由基表和数据字典视图组成;
数据字典中记录了数据库的系统信息、例程运行性能;
数据字典表和数据字典视图都保存在SYSTEM表空间中;
用途:
用户可以从数据字典的只读视图中,获取各种与对象有关的信息;
任何用户都可以将数据字典视为数据库的只读参考信息。
每次修改方案对象后,Oracle都在数据字典中记录下所做的修改;

名称组成:分前缀和后缀,两者之间用下划线相连
常用的三类视图
user_*
存储了关于当前用户所拥有的对象的信息。(即所有在该用户模式下的对象)
all_*
存储了当前用户能够访问的对象的信息。(与user_相比,all_ 并不需要拥有该对象,只需要具有访问该对象的权限即可)
dba_*
存储了数据库中所有对象的信息。(前提是当前用户具有访问这些数据库的权限,一般来说必须具有管理员权限)

二、表 空 间

表空间:表空间(Tablespace)是数据库的逻辑划分,一个Oracle数据库由若干个表空间组成。
任何数据库对象在存储时都必须存储在某个表空间中。
一个表空间对应于磁盘上的一个或多个数据文件。
通常一个Oracle数据库可能会有7个表空间:SystemSYSAUXUsersUndoTempExampleBigTBS

System表空间:一个Oracle数据库至少有一个表空间,既System表空间。当数据库创建时,必须指明System表空间的数据文件的特征,如数据文件名称、大小。在System表空间中存储了Oracle自身的内部结构信息,全部的PL/SQL程序的源代码和编译后的代码等。
SYSAUX表空间:是System表空间的辅助表空间,许多数据库的工具和可选组件将其对象存储在SYSAUX表空间内,它是许多数据库工具和可选组件的默认表空间。
Users表空间:用于存储用户的数据。
Undo表空间:用于事务的回滚、撤销。
Temp表空间:用于存放Oracle运行中需要临时存放的数据,如排序的中间结果等。

除了这些默认的表空间之外,用户还可以创建属于自己的表空间

1.表空间常规管理

(1)查询视图dba_tablespaces,显示表空间的信息
select tablespace_name,contents,status  from dba_tablespaces;
(2)显示表空间所包含的数据文件
select file_name,bytes from dba_data_files where tablespace_name='SYSTEM';
(3)显示表空间包括的所有表
select owner,table_name from all_tables where tablespace_name=’USERS’;

2.创建表空间

//模板
*表空间
create tablespace 表空间名 datafile '文件名.dbf' size 空间大小
1. 创建本地管理表空间
Create tablespace mytab datafile ‘f:\mag\tb01.dbf’ size 10m extent management local autoalllocate;
*临时表空间
create temporary tablespace  表空间名 tempfile '文件名.dbf' size 空间大小
2. 创建临时表空间
Create temporary tablespace tmptbs tempfile ‘f:\mag\tmpo1.dbf size 20m extent management local

3.设置和修改表空间属性

mytab是我表空间名

  1. 使表空间脱机:alter tablespace mytab offline
    无法读取文件
  2. 使表空间联机:alter tablespace mytab online
    可以读取文件
  3. 使表空间只读:alter tablespace mytab read only
    不能更改,只能查询
  4. 使表空间可写:alter tablespace mytab read write

4.删除、扩展表空间

//模板
*删除表空间
drop tablespace 表空间名 including contents and datafiles;
说明:including contents 表示删除表空间时,删除该空间的所有数据库对象,而 datafiles 表示将数据库文件也删除。
1. 删除表空间
drop tablespace mytab including contents and datafiles;

*扩展表空间
1. 增加数据文件 
 alter tablespace mytab add datafile ‘d:\test\sp01.dbf’ size 20m; 
2. 增加数据文件的大小 
alter database datafile ‘d:\test\sp01.dbf’ resize 20m; 
注意:数据文件的大小不要超过 500m 
3. 设置文件的自动增长。 
 alter database datafile ‘d:\test\sp01.dbf’ autoextend on next 10m maxsize 500m; 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值