Oralce tablespace表空间创建和管理

1.表空间的概述
Java代码 复制代码 收藏代码
  1. 1.表空间是数据库的逻辑组成部分。   
  2. 2.从物理上讲,数据库数据存放在数据文件中;   
  3. 3.从逻辑上讲,数据库是存放在表空间中,表空间由一个或者多个数据文件组成。  
1.表空间是数据库的逻辑组成部分。
2.从物理上讲,数据库数据存放在数据文件中;
3.从逻辑上讲,数据库是存放在表空间中,表空间由一个或者多个数据文件组成。

2.oracle的逻辑组成
Java代码 复制代码 收藏代码
  1. 1.oracle 的逻辑结构包含 表 空间 段 区 块   
  2. 2.数据库是由表空间构成,表空间又是有段构成,段是由区构成,区是由 oracle的块构成,这样做是为了提高数据库的效率   
  3. 3.作用   
  4.          A.控制数据库占用的磁盘空间    
  5.          B dba 可以将不同数据类型部署到不同的位置,这样 有利于i/0的性能,同时利于备份和恢复等管理  
1.oracle 的逻辑结构包含 表 空间 段 区 块
2.数据库是由表空间构成,表空间又是有段构成,段是由区构成,区是由 oracle的块构成,这样做是为了提高数据库的效率
3.作用
         A.控制数据库占用的磁盘空间 
         B dba 可以将不同数据类型部署到不同的位置,这样 有利于i/0的性能,同时利于备份和恢复等管理

3.查询Oracle的表空间
Java代码 复制代码 收藏代码
  1. select tablespace_name from dba_tablespaces;  
select tablespace_name from dba_tablespaces;

4.创建表空间的语法和步骤
Java代码 复制代码 收藏代码
  1. 1.创建表空间采用create tablespace命令完成   
  2. 2.需要注意的是一般情况下,建立表空间,是特权用户和dba来执行的。如果其他用户要创建必须要有 create tablespace 的系统权限  
1.创建表空间采用create tablespace命令完成
2.需要注意的是一般情况下,建立表空间,是特权用户和dba来执行的。如果其他用户要创建必须要有 create tablespace 的系统权限

5.案例: 创建一个表空间
Java代码 复制代码 收藏代码
  1. crate tablesapce  data01 datafile 'd: estdata01.dbf' size  20m uniform size 128k; // 说明:创建一个名称为 data01 的表空间,并为该表空间建立一个名称为data.01.dbf的数据文件,区的大小为128k  
 crate tablesapce  data01 datafile 'd:	estdata01.dbf' size  20m uniform size 128k; // 说明:创建一个名称为 data01 的表空间,并为该表空间建立一个名称为data.01.dbf的数据文件,区的大小为128k

6.案例: 使用自定义的表空间
Java代码 复制代码 收藏代码
  1. 1.create table mydept(deptno number(4),dname varchar2(14),loc varchar2(13)) tablespace data01;//如果不指定表空间,就默认放在 SYSTEM 表空间下   
  2. 2. create table emp(empno,ename) tablespace data01 as select empno,ename from scott.emp; //利用其他方案的表创建自己的表后放在自定义表空间下  
1.create table mydept(deptno number(4),dname varchar2(14),loc varchar2(13)) tablespace data01;//如果不指定表空间,就默认放在 SYSTEM 表空间下
2. create table emp(empno,ename) tablespace data01 as select empno,ename from scott.emp; //利用其他方案的表创建自己的表后放在自定义表空间下

7.什么是表空间的状态
Java代码 复制代码 收藏代码
  1. 1. 当建立表空间的时候,表空间处于联机的(online)状态,此时表空间是可以访问的,并且是可以读写,既可以在表空间上执行各种语句。但是在进行系统维护或者数据维护的时候,可能需要改变表空间的状态(脱机,联机,只读)。 一般由特权用户和dba来操作  
1. 当建立表空间的时候,表空间处于联机的(online)状态,此时表空间是可以访问的,并且是可以读写,既可以在表空间上执行各种语句。但是在进行系统维护或者数据维护的时候,可能需要改变表空间的状态(脱机,联机,只读)。 一般由特权用户和dba来操作

8.表空间脱机
Java代码 复制代码 收藏代码
  1. alter tablespace 表空间名 offline;  
 alter tablespace 表空间名 offline;

9.使表空间联机
Java代码 复制代码 收藏代码
  1. alter tablespace 表空间名 online;  
 alter tablespace 表空间名 online;

10.只读表空间
Java代码 复制代码 收藏代码
  1. alter tablespace 表空间 read only; // 当建立表空间时,表空间可以读写,如果不希望在表空间上执行update ,delete ,insert 操作,那么可以将表空间修改为只读   
alter tablespace 表空间 read only; // 当建立表空间时,表空间可以读写,如果不希望在表空间上执行update ,delete ,insert 操作,那么可以将表空间修改为只读 

11.改为读写表空间
Java代码 复制代码 收藏代码
  1. alter tablespace tbs001 read write;  
 alter tablespace tbs001 read write;

12.显示表空间中的所有表
Java代码 复制代码 收藏代码
  1. select * from user_tables where TABLESPACE_NAME='DATA01';//个人发现在oralce系统中 系统表 或者 视图 是区分大写)  
select * from user_tables where TABLESPACE_NAME='DATA01';//个人发现在oralce系统中 系统表 或者 视图 是区分大写)

13.查看某表所在的表空间 (知道表名)
Java代码 复制代码 收藏代码
  1. select tablespace_name,table_name from user_tables where table_name='EMP';  
select tablespace_name,table_name from user_tables where table_name='EMP';

14.删除表空间
Java代码 复制代码 收藏代码
  1. drop tablespace DATA01 including contents and datafiles;// 说明: including contents 表示删除表空间时候,删除该表空间的所有数据对象,而datafiles 表示将数据库文件也删除。  
drop tablespace DATA01 including contents and datafiles;// 说明: including contents 表示删除表空间时候,删除该表空间的所有数据对象,而datafiles 表示将数据库文件也删除。

15. 扩展表空间 oralce 有3中方法
Java代码 复制代码 收藏代码
  1. 1.添加数据文件  alter tablespace TBS001 add datafile 'd: bs002.dbf' size 20m;   
  2. 2.增加数据文件的大小 alter database datafile 'd: bs001.dbf' resize 20m;   
  3. 3.设置自动增长 alter database datafile 'd: bs002.dbf' autoextend on next 10m maxsize 500m; //9i前每个数据文件是有大小的.之后的版本有人说没有大小限制(取决自己磁盘)  
1.添加数据文件  alter tablespace TBS001 add datafile 'd:	bs002.dbf' size 20m;
2.增加数据文件的大小 alter database datafile 'd:	bs001.dbf' resize 20m;
3.设置自动增长 alter database datafile 'd:	bs002.dbf' autoextend on next 10m maxsize 500m; //9i前每个数据文件是有大小的.之后的版本有人说没有大小限制(取决自己磁盘)

16.移动数据文件(处理磁盘损坏的时候,将数据文件进行迁移)
Java代码 复制代码 收藏代码
  1.  1.找出数据文件对应的 表空间   
  2.     select tablespace_name from dba_data_files where file_name='D:TBS001.DBF';   
  3. 2.使表空间脱机 确保数据文件的一致性   
  4.     alter tablespacce tbs001 offline;   
  5. 3.使用命令移动数据文件到指定的目标位置 (sqlplus中能成功,PL/Sql中不能成功 应是我不知道)   
  6.     host move d: bs001.dbf c: bs001.dbf;   
  7. 4.修改表空间对应的数据文体 为新磁盘下的数据文件   
  8.     alter tablespace TBS001 rename datafile 'D:TBS001.DBF' to 'E:TBS001.DBF';   
  9. 5.使表空间联机   
  10.     alter tablespace TBS001 online;  
 1.找出数据文件对应的 表空间
    select tablespace_name from dba_data_files where file_name='D:TBS001.DBF';
2.使表空间脱机 确保数据文件的一致性
    alter tablespacce tbs001 offline;
3.使用命令移动数据文件到指定的目标位置 (sqlplus中能成功,PL/Sql中不能成功 应是我不知道)
    host move d:	bs001.dbf c:	bs001.dbf;
4.修改表空间对应的数据文体 为新磁盘下的数据文件
    alter tablespace TBS001 rename datafile 'D:TBS001.DBF' to 'E:TBS001.DBF';
5.使表空间联机
    alter tablespace TBS001 online;

17.查询表空间的信息
Java代码 复制代码 收藏代码
  1. select * from dba_tablespaces;  
select * from dba_tablespaces;

18.查询表空间的所有的数据文件
Java代码 复制代码 收藏代码
  1. select file_name,bytes from dba_data_files where tablesapce_name='TBS001  
select file_name,bytes from dba_data_files where tablesapce_name='TBS001

19.表空间的状态
Java代码 复制代码 收藏代码
  1. offline,online, read only, read write;  
offline,online, read only, read write;

20.其他常用的表空间
Java代码 复制代码 收藏代码
  1. 1.索引表空间   
  2. 2.undo表空间   
  3. 3.临时表空间   
  4. 4.非标准块的表空间   
  5. 注:如果你将上面的这个表空间弄清楚了,可以考oracle 初级 或者 中级 证书了 要钱的哦!  
1.索引表空间
2.undo表空间
3.临时表空间
4.非标准块的表空间
注:如果你将上面的这个表空间弄清楚了,可以考oracle 初级 或者 中级 证书了 要钱的哦!

关于Oracle认证考试
1.Oracle提供了3级认证 :
Java代码 复制代码 收藏代码
  1. OCA认证专员、   
  2. OCP认证专家、   
  3. OCM认证大师.  
OCA认证专员、
OCP认证专家、
OCM认证大师.

2. OCA考试科目
Java代码 复制代码 收藏代码
  1. 现在OCA认证版本已经升级到11g考试科目为:   
  2. Oracle Database 11g: SQL Fundamentals 考试代码:1Z0-047 考试费用:$125  
  3. Oracle Database 11g: Administration Workshop I 考试代码:1Z0-042 考试费用:$125  
  4. 要获得OCA证书,只需要在Pearson vue考试中心通过考试就可以获得Oracle公司发放的OCA认证。考试费用为$125每门。  
现在OCA认证版本已经升级到11g考试科目为:
Oracle Database 11g: SQL Fundamentals 考试代码:1Z0-047 考试费用:$125
Oracle Database 11g: Administration Workshop I 考试代码:1Z0-042 考试费用:$125
要获得OCA证书,只需要在Pearson vue考试中心通过考试就可以获得Oracle公司发放的OCA认证。考试费用为$125每门。

3.OCP考试科目
Java代码 复制代码 收藏代码
  1. 现在OCP认证版本已经升级到11g考试科目为:   
  2. Oracle Database 10g: Administration Workshop II 考试代码:1Z0-043 考试费用:$125  
  3. 要获得Oracle10g OCP认证, 要求在OCP考试前必须参加一门Oracle大学的原厂课程培训, 即Oracle Database 10g: Administration Workshop I 或Oracle Database 10g: Administration Workshop II中的任何一门课程。否则将不能得到OCP10g的证书。  
现在OCP认证版本已经升级到11g考试科目为:
Oracle Database 10g: Administration Workshop II 考试代码:1Z0-043 考试费用:$125
要获得Oracle10g OCP认证, 要求在OCP考试前必须参加一门Oracle大学的原厂课程培训, 即Oracle Database 10g: Administration Workshop I 或Oracle Database 10g: Administration Workshop II中的任何一门课程。否则将不能得到OCP10g的证书。

4.Oracle认证考试途径
Java代码 复制代码 收藏代码
  1. 1. Oracle University (Oracle 大学)即Oracle原厂培训,费用较高。   
  2. 2. Oracle公司指定的WDP培训机构,比如上海地区的(上海NIIT),北京的尚观,西南地区(重庆思庄)等。  
1. Oracle University (Oracle 大学)即Oracle原厂培训,费用较高。
2. Oracle公司指定的WDP培训机构,比如上海地区的(上海NIIT),北京的尚观,西南地区(重庆思庄)等。

5.如何参加考试
OCP认证的所有考试也是通过Prometric公司组织的,具体的考试事宜请访问它的官方网站:

扩展阅读
1.上海NIIT:
2.文章来源青年人网站:
3.重庆思庄
原文地址:https://www.cnblogs.com/MR-Guo/p/3422153.html