oracle表空间管理及操作实用案例

时间:2019-05-14 20:09:30下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《oracle表空间管理及操作实用案例》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《oracle表空间管理及操作实用案例》。

第一篇:oracle表空间管理及操作实用案例

Oracle

表空间管理及操作详解(附带案例)

一:表空间概述

表空间是数据库的逻辑组成部分,从物理上讲,数据库数据存放在数据文件中;数据库逻辑上讲是由一个或者多个表空间组成,数据文件则是存放在表空间中,表空间有一个或者多个数据文件组成即表空间有数据文件构成的。

数据库,表空间,段,区,块,按大小排列依次是:数据库---》表空间-----》段-----》区----》块。

1.建立表空间的作用:

(1.)控制数据库占用的磁盘空间。(2).dba可以将不同的数据类型部署到不同的位置,这样有利于提高i/o性能,同时有利与备份和恢复等管理操作。

二:管理表空间和数据文件。

(1)建立表空间create tablespace;一般情况下建立表空间是特权用户或者dba来执行的,如果其他用户来创建表空间,则用户建必须要具有create tablespace的系统权限。(2)建立数据表空间

在建立数据库后,为便于管理表,最好建立自己的表空间。

create tablespace sp02 datafile 'd:testsp02.dbf' size 20m uniform size 128k 说明:执行完上述命令后,会建立名称为sp02的表空间,并为该表空间建立名称为sp02.dbf的数据文件,区的大小为128k。(3.)在表空间建表

create table tablesp02(ID number(5),name varchar2(20))tablespace sp02(4)显示当前用户拥有哪些表。

select * from tab;

(5).知道表空间名,显示该表空间包括的所有表。

select * from all_tables where tablespace_name='表空间名'。

注:拥有权限不同的用户在进行以上操作得到的结果可能不同。System可以查看得到某空间的所拥有表。(比如users表空间)(6)知道表名,查看该表属于那个表空间。

select TABLESPACE_NAME, TABLE_NAME from user_tables where TABLE_NAME='EMP';(7)知道表名,查看该表属于那个表空间,属于哪个用户。

select owner,TABLESPACE_NAME, TABLE_NAME from all_tables where TABLE_NAME='EMP';(8)改变表空间的状态 使表空间可读写

alter tablespace 表空间名 read write;

删除表空间,一般情况下由特权用户或者dba来操作。具有drop tablespace系统权限。

drop tablespace ‘表空间’includeing contens and datafiles;

说明:includeing contens表示删除表空间时,删除该空间的所有数据库对象而datafiles表示将数据库文件也删除。(9)改变表空间的状态(1)使用空间脱机

alter tablespace 表空间名 offline(2)使用空间联机

alter tablespace表空间名online(3)只读表空间

建立表空间时,表空间可以读写,如果不希望在表空间上执行update,delete,insert操作。那么可以将表空间修改为只读。alter talbespace sp01 read only;

三:移动数据文件:

(1)确定数据文件所在的表空间(知道表属于哪个表空间)Select tablespace_name from dba_data_files where file_name='D:TEST5.DBF';(2)使用表空间脱机

确保数据文件的一致性,将表空间转换为offline的状态。alter tablespace sp01 offline;

(3)使用命令移动数据文件到指定的目标位置。host move d:testsp01.dpf c:testsp01.dbf;(4)执行alter tablespace命令

在物理上移动了数据后,还必须执行alter tablespace命令对数据库文件进行逻辑修改。

alter tablespace sp01 rename datefile ‘d:sp01.dbf’ to 'c:sp01.dbf'(5)使得表空间联机

在移动了数据文件后,为了使用户可以访问该表空间,必须将其变为online状态:

alter tablespace sp01 online;

四:显示表空间信息:

查询数据视图字典dba_tablespace,显示表空间的信息:

select tablespace_name from dba_tablespaces 显示某个表空间的详细信息: select * from dba_tablespaces where TABLESPACE_NAME='SP05';显示表空间所包含的数据文件。查询数据字典视图dba_data_files。可显示表空间所包含的数据文件如下:

select file_name,bytes from dba_data_files where tablespace_name='SP05';常用表空间,undo表空间和临时表空间,非标准块的表空间。了解表空间的各个状态:如何改变表空间的的状态的方法。(online,offline,read write,read only)system是系统表空间,不能作为只读,如果是普通表空间,那么我们可以设为只读。

五:附加案例:建一个表空间,在表空间里面建表,并且增加表空间的存储空间。

1.建立表空间 create tablespace sp05 datafile 'd:testsp05.dbf' size 20m uniform size 128k 2.建表

create table tablesp05(ID number(5),name varchar2(20))tablespace sp02 3.insert into tablesp05 select * from tablesp05;(重复多步提示空间不足)

4,拓展表空间,扩大存储空间。

alter tablespace sp05 add datafile 'D:test5.dbf' size 20m;

拓展表空间的存储空间这里有三种方法:

(1)增加数据文件alter tablespace sp05 add datafile 'D:test5.dbf' size 20m;

(2)修改数据文件大小

alter database datafile 'd:testsp05.dbf' resize 50m;数据文件不要超过500m。(3)设置文件的自动增长 alter database datafile 'D:testSP05.dbf' autoextend on next 10m maxsize 500m;

第二篇:oracle 管理表空间和数据文件

oracle 管理表空间和数据文件

介绍ν

表空间是数据库的逻辑组成部分。从物理上讲,数据库数据存放在数据文件中;

从逻辑上讲,数据库则是存放在表空间中,表空间由一个或多个数据文件组成。

数据库的逻辑结构

介绍ν

oracle 中逻辑结构包括表空间、段、区和块。

说明一下数据库由表空间构成,而表空间又是由段构成,而段又是由区构成,而

区又是由 oracle块构成的这样的一种结构,可以提高数据库的效率。

为了让大家明白,我们画图说明逻辑关系:看图:

表空间

介绍ν

表空间用于从逻辑上组织数据库的数据。数据库逻辑上是由一个或是多个表空间

组成的。通过表空间可以达到以下作用:

1.控制数据库占用的磁盘空间

2.dba 可以将不同数据类型部署到不同的位置,这样 利于提高 i/o性能,同

时利于备份和恢复等管理操作。(可以把索引,触发器单独放一个表空间中)。

建立表空间ν

建立表空间是使用 crate tablespace 命令完成的,需要注意的是,一般情况下,建立表空间是特权用户或是 dba 来执行的,如果用其它用户来创建表空间,则用

户必须要具 create tablespace 的系统权限。

建立数据表空间ν

在建立数据库后,为便于管理表,最好建立 自己的表空间 create tablespace data01 datafile 'd:testdada01.dbf' size 20m uniform size 128k;

说明:执行完上述命令后,会建立名称为 data01 的表空间,并为该表空间建立

名称为 data01.dbf 的数据文件,区的大小为 128k

ν 使用数据表空间(把表关联到表空间,如果没指定表空间,则默认在sys表空间里)create table mypart(deptno number(4), dname varchar2(14), loc varchar2(13))tablespace data01;

改变表空间的状态ν

当建立表空间时,表空间处于联机的(online)状态,此时该表空间是可以访问的,并且该表空间是可以读写的,即可以查询该表空间的数据,而且还可以在表

空间执行各种语句。但是在进行系统维护或是数据维护时,可能需要改变表空间的状态。一般情况下,由特权用户或是 dba 来操作。安全性考虑

1.使表空间脱机

alter tablespace 表空间名 offline;2.使表空间联机

alter tablespace 表空间名 online;3.只读表空间

当建立表空间时,表空间可以读写,如果不希望在该表空间上执行update,delete,insert 操作,那么可以将表空间修改为只读

alter tablespace 表空间名 read only;

(修改为可写是 alter tablespace 表空间名 read write;)

改变表空间的状态ν

我们给大家举一个实例,说明只读特性:

1.知道表空间名,显示该表空间包括的所有表

select * from all_tables where tablespace_name=’表空间名’;

2.知道表名,查看该表属于那个表空间 select tablespace_name, table_name from user_tables where table_name=’emp’;

通过 2.我们可以知道 scott.emp 是在 system 这个表空间上,现在我们可以将

system 改为只读的但是我们不会成功,因为 system 是系统表空间,如果是普通

表空间,那么我们就可以将其设为只读的,给大家做一个演示,可以加

理解。

3.4.使表空间可读写

alter tablespace 表空间名 read write;

ν 删除表空间

一般情况下,由特权用户或是 dba 来操作,如果是其它用户操作,那么要求用户

具 drop tablespace 系统权限。

drop tablespace ‘表空间’ including contents and datafiles;

说明:including contents 表示删除表空间时,删除该空间的所有数据库对象,而 datafiles 表示将数据库文件也删除。

扩展表空间ν

表空间是由数据文件组成的,表空间的大小实际上就是数据文件相加后的大小。

那么我们可以想象,假定表employee 存放到data01 表空间上,初始大小就是

2M,当数据满 2M 空间后,如果在向 employee 表插入数据,这样就会显示空间不

足的错误。

案例说明:

1.建立一个表空间 sp01

2.在该表空间上建立一个普通表 mydment 其结构和 dept 一样

3.向该表中加入数据 insert into mydment select * from dept;4.当一定时候就会出现无法扩展的问题,怎么办?

5.就扩展该表空间,为其增加更多的存储空间。三种方法:

1.增加数据文件

SQL> alter tablespace sp01 add datafile ‘d:testsp01.dbf’ size 20m;

-----------------------Page 51-----------------------2.增加数据文件的大小

SQL> alter tablespace 表空间名 ‘d:testsp01.dbf’ resize 20m;

这里需要注意的是数据文件的大小不要超过 500m。

3.设置文件的自动增长。

SQL> alter tablespace 表空间名 ‘d:testsp01.dbf’ autoextend on next

10m maxsize 500m;

移动数据文件ν

有时,如果你的数据文件所在的磁盘损坏时,该数据文件将不能再使用,为了能

够重新使用,需要将这些文件的副本移动到其它的磁盘,然后恢复。

下面以移动数据文件 sp01.dbf为例来说明:

1.确定数据文件所在的表空间

select tablespace_name from dba_data_files where file_name=’d:testsp01.dbf’;

2.使表空间脱机

确保数据文件的一致性,将表空间转变为 offline 的状态。

alter tablespace sp01(表空间名)offline;3.使用命令移动数据文件到指定的目标位置

host move d:testsp01.dbf c:testsp01.dbf 4.执行 alter tablespace 命令

在物理上移动了数据后,还必须执行alter tablespace 命令对数据库文件进行

逻辑修改: alter tablespace sp01 rename datafile ‘d:testsp01.dbf’ to

‘c:testsp01.dbf’;

5.使得表空间联机

在移动了数据文件后,为了使用户可以访问该表空间,必须将其转变为 online 状态。

alter tablespace sp01(表空间名)online;

显示表空间信息ν

查询数据字典视图 dba_tablespaces,显示表空间的信息:

select tablespace_name from dba_tablespaces;

显示表空间所包含的数据文件ν

查询数据字典视图 dba_data_files,可显示表空间所包含的数据文件,如下:

select file_name, bytes from dba_data_files where tablespce_name=’表

空间’;

表空间小结ν

1.了解表空间和数据文件的作用

2.掌握常用表空间,undo 表空间和临时表空间的建立方法

3.了解表空间的各个状态(online, offline, read write, read only)的作用,及如何改变表空间的状态的方法。

4.了解移动数据文件的原因,及使用alter tablespace 和 alter datatable 命令移动数据文件的方法。

-----------------------Page 52-----------------------

其它表空间ν

除了最常用的数据表空间外,还有其它类型表空间:

1.索引表空间 2.undo 表空间

3.临时表空间

4.非标准块的表空间

这几种表空间,大家伙可以自己参考书籍研究,这里我就不讲。

其它说明ν

关于表空间的组成部分 段/区/块,我们在后面给大家讲解。

第三篇:oracle表空间和数据文件的管理实验

表空间和数据文件的管理实验

试验目的:全面掌握表空间和数据文件的创建、管理过程 试验内容:

1、创建表空间、增加数据文件

2、管理表空间和数据文件的的各种操作 试验步骤:

1、掌握表空间和数据文件相关的概念

1)oracle默认的表空间

系统默认的表空间:SYSTEM、SYSAUX、UNDOTBS1、EMP、EXAMPLE、USERS 2)系统表空间

SYSTEM、SYSAUX是系统表空间,SYSTEM用于存放oracle数据字典的结构和内部元数据。

SYSAUX是SYSTEM的辅助表空间用于存放个模式(用户)的对象元数据。

3)非系统表空间

由DBA根据需要创建,存放用户自己的数据,也可以包含临时数据以及UNDO数据。

2、创建表空间

1)创建表空间的语法

CREATE [smallfile|bigfile] TABLESPACE tablespace_name DATAFILE ‘/path/filename’ SIZE [k|m] REUSE

[‘/path/filename’ SIZE [k|m] REUSE]

[AUTOEXTEND [ON|OFF] NEXT [k|m] MAXSIZE [UNLIMITED|[K|M]]] [ONLINE|OFFLINE] [LOGGING|NOLOGGING] [PERMANENT|TEMPORARY] [DICTIONARY|LOCAL]

2)定义表空间名字及属性

创建两个表空间ts_test1、ts_test2,本地化管理(Local,默认)、永久表空间(permantent,默认)

3)定义数据文件名字、路径、初始大小、自动扩展等属性

数据文件data_test1、data_test2 路径:c:disk1data_test1.dbf c:disk2data_test2

4)创建脚本:

a、创建本地永久表空间

//创建本地永久表空间ts_test1和ts_test2,默认为永久和本地

SQL>create tablespace ts_test1 datafile ‘c:disk1data_file1.dbf’ size=50m reuse autoextend on next 10m;

SQL>create tablespace ts_test2 datafile ‘c:disk2data_file2.dbf’ size=50m reuse autoextend on next 10m maxsize unlimited;查看一下创建完成的结果

//查看dba_tablespaces结构

SQL>desc dba_tablespaces;

//查看字典中的所有表空间情况,extent_management值为local时为本地表空间 SQL>select tablespace_name,status,extent_management,content from dba_tablespaces;//查看创建表空间时创建的数据文件,首先查看dba_data_files字典结构 SQL>desc dba_data_files;//查看数据文件情况 SQL>set linesize 120 SQL>col file_name for a20 SQL>col file_id for a20 SQL>col tablespace_name a30 SQL>col online_status for a20 SQL>select file_name,file_id,tablespace_name,online_status from dba_data_files;

b、创建还原表空间和临时表空间

//创建还原表空间

SQL>create undo tablespace test_undo datafile ‘c:disk3test_undo’ size 20m;

//查看创建结果,contents为表空间内容类型,如undo

SQL>select tablespace_name,contents from dba_tablespaces;

c、创建临时表空间

//创建临时表空间

SQL>create temporary tablespace test_temp

tempfile ‘c:disk4test_temp.dbf’ size 20m extent management local;

//查询创建结果

SQL>select tablespace_name,extent_management,contents from dba_tablespaces;d、增加数据文件

//增加数据文件

SQL>alter tablespace ts_test1 add datafile ‘c:disk1ts_test11.dbf’ size 10m;

//查看增加数据文件的结果

SQL>col file_name for a30

SQL>col tablespace_name for a30 SQL>select file_name,tablespace_name from dba_data_files;

3、管理表空间的各种操作

1)改变表空间的读写状态

//将表空间设为只读

//这时表空间应为online状态,表空间不能包含回滚段,不能是归档模式

//查看数据库日志模式

SQL>archive log list;//查看表空间contents

SQL>select tablespace_name,contents from dba_tablespaces where tablespace_name like‘TS_%’;

//修改为只读

SQL>alter tablespace ts_test1 read only;2)表空间脱机离线、在线连接

SQL>alter tablespace ts_test1 offline;

SQL>alter tablespace ts_test1 online;

//查看表空间状态

SQL>select tablespace_name,status from dba_tablespaces;3)修改表空间名称 //查询当前表空间名称和所包含的数据文件

SQL>select file_name,tablespace_name from dba_data_files;//确认表空间处在online状态

SQL>select tablespace_name,status from dba_tablespaces;//表空间改名

SQL>alter tablespace ts_test2 rename to ts_test22;//查询修改结果

SQL>Col file_name for a30;SQL>col tablespace_name for a30;SQL>select file_name,tablespace_name from dba_data_files;4)设置默认表空间

SQL>alter database default tablespace users //设置默认临时表空间

SQL>alter database default temporary tablespace temp;5)删除表空间

SQL>drop tablespace ts_test2;//仅删除表空间信息不删除表空间数据文件 SQL>drop tablespace ts_test2 includng contents;//包括数据文件全部删除 查看删除后的结果情况

SQL>select file_name,tablespace_name from dba_data_files;6)切换undo表空间

SQL>alter system set undo_tablespace =undotbs02;7)删除undo表空间

要删除正在使用的undo表空间,首先切换undo表空间后在进行删除 例如删除undost01 SQL>alter system set undo_tablespace=undost02;SQL>drop tablespace undost01;8)查询undo表空间信息

SQL>show parameter undo_tablespace;

4、管理数据文件的各种操作 1)在表空间中新增一个数据文件

SQL>alter tablespace ts_test1 add datafile ‘c:dsk1ta_test111.dbf’ size 50m;2)删除表空间中无数据的数据文件 第一种语法

SQL>alter database datafile ‘c:disk1ts_test1.dbf’ offline;//数据文件脱机 SQL>alter tablespace ts_test1 drop datafile ‘c:disk1ts_test111.dbf’;第二种语法:

SQL>alter database datafile ‘mytb.dbf’ offline drop;3)数据文件自动扩展设置

SQL>alter tablespace ts_test1 datafile ‘c:disk1ts_test1.dbf’ autoextend on next 10m maxsize 500m;4)重置数据文件大小,收回或扩数据文件空间

SQL>alter tablespace ts_test1 datafile ‘c:disk1ts_test1.dbf’ resize 45m;

查询重置数据文件大小后的结果

SQL>col file_name for a30;

SQL>col tablespace_name for a30;

SQL>select file_name,tablespace_name,bytes/(1024*1024)from dba_data_files;5)移动数据文件

有两条语句可以实现对数据文件的移动:

a、alter tablespace tablespace_name rename datafile ‘/path/file_name1’

to ‘/path/file_name_new’;

a这条语句主要适合用户表空间,在执行这条语句时表空间必须脱机才能执行。SQL>alter tablesapace ts_test2 offline;//使表空间ts_test2脱机

SQL>host copy c:disk2ts_test2.dbf c:disk1 //将数据文件拷贝到新的位置

SQL>alter tablespace rename datafile ‘c:disk2ts_test2.dbf’ to ‘c:disk1ts_test1.dbf’;b、alter database db_name rename file ‘/path/file_name1’ to ‘/path/file_name_new’;

这条语句使用于系统表空间及不能置为脱机的表空间中的数据文件。在使用该语句时,数据库必须在加载(mount)的状态且目标数据文件必须存在,因为该语句只是修改文件中指向数据文件的指针(地址)。SQL>shutdown immediate;SQL>host copy c:oracleproduct10.2.0oradatasystem01.dbf c:disk1 SQL>startup mount;SQL>alter database rename file ‘c:oracleproduct10.2.0oradataorclsystem01.dbf’ to ‘c:disk1system01.dbf’;SQL>alter database open;查询移动后的结果

SQL>select file_name,tablespace_name from dba_data_files;

第四篇:Oracle建表空间各种语句

在创建用户之前,先要创建表空间:

其格式为:格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;如:

SQL> create tablespace news_tablespace datafile 'F:oracleproduct10.1.0oradatanewsnews_data.dbf' size 500M;其中'news_tablespace'是你自定义的表空间名称,可以任意取名;'F:oracleproduct10.1.0oradatanewsnews_data.dbf'是数据文件的存放位置,'news_data.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。

现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:

其格式为:格式: create user 用户名 identified by 密码 default tablespace 表空间表;如:

SQL> create user news identified by news default tablespace news_tablespace;默认表空间'default tablespace'使用上面创建的表空间。

接着授权给新建的用户:

SQL> grant connect,resource to news;--表示把 connect,resource权限授予news用户

SQL> grant dba to news;--表示把 dba权限授予给news用户

授权成功。

ok!数据库用户创建完成,现在你就可以使用该用户创建数据表了!1.建表空间

create tablespace hoteldata datafile 'D:javaOracleproduct10.1.0oradatazznorclhoteldata.dbf'size 200m autoextend on next 10m maxsize unlimited;2.建用户 create user hotel identified by hotel default tablespace hoteldata account unlock;//identified by 后面的是密码,前面的是用户名 3.用户授权

grant resource,connect,RECOVERY_CATALOG_OWNER to hotel;grant create table to hotel;alter user hotel quota unlimited ON OSDB;alter user hotel default tablespace hoteldata;4.删除表空间

DROP TABLESPACE hoteldata INCLUDING CONTENTS AND DATAFILES;5.删除用户

DROP USER hotel CASCADE 6.删除表的注意事项

在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。oracle sqlplus脚本建库总结(原创)******************************************************************/--查询表空间参数

select tablespace_name,min_extents,max_extents,pct_increase,status from dba_tablespaces;--查询数据文件信息

--autoextensible数据库已满后是否自动扩展

select tablespace_name,bytes,autoextensible,file_name from dba_data_files;/******************************************************************/--创建表空间

--一般信息

--DATAFILE:数据文件目录--存储

--AUTOEXTEND:数据文件满后自动扩展--ON NEXT:增量

--MAXSIZE UNLIMITED:最大容量无限制--SIZE:文件大小--存储

--启用事件记录:LOGGING为生成从做日志并可恢复,NOLOGGING为快速更新不生成日志且不可恢复

--MANAGEMENT LOCAL:本地管理--缺省:自动分配

--UNIFORM SIZE:统一分配

--MANAGEMENT DICTIONARY:在字典中管理--DEFAULT STORAGE:覆盖默认区值--INITIAL:初始大小--NEXT :下一个大小--MINEXTENTS:最小数量

--MAXEXTENTS UNLIMITED :最大数量不限制--PCTINCREASE:增量,单位“%”--MINIMUM EXTENT:最小区大小 CREATE TABLESPACE “TEST” NOLOGGING DATAFILE 'G:ORACLEORADATAMYORACLETEST.ora' SIZE 5M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 12K;--最好写成相对路径,免得出错 CREATE TABLESPACE “TEST” NOLOGGING DATAFILE '../DATABASE/TEST.ora' SIZE 5M REUSE--建议用'../oradata/TEST.ora' AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 12K;CREATE TABLESPACE “TEST” LOGGING DATAFILE 'G:ORACLEORADATAMYORACLETEST.ora' SIZE 5M EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE(INITIAL 1K NEXT 2K MINEXTENTS 5 MAXEXTENTS 67 PCTINCREASE 4)MINIMUM EXTENT 3K;/******************************************************************/--增加表空间, 注意这里test.ora1不能与原表空间文件名称相同--添加一个新的大小为5M数据库文件test.ora1 alter tablespace mytesttablespace add datafile 'c:testtest.ora1' size 5M;/******************************************************************/--修改表空间数据库文件属性,myoracle为sid--将test.ora1数据库文件改为3M,其中resize可以是ONLINE, OFFLINE, RESIZE, AUTOEXTEND 或 END/DROP alter database myoracle datafile 'c:testtest.ora1' resize 3M;alter database myoracle datafile '$ORACLE_HOME/oradata/undo102.dbf' autoextend on next 10m maxsize 500M;/******************************************************************/ /*删除表空间

语法:drop tablespace tablespace_name including contents and datafiles;删除表空间时要系统不会删除表空间数据库文件,要彻底删除要手动删除 */ drop tablespace mytesttablespace including contents and datafiles;/******************************************************************/--创建用户--命令:

--CREATE USER 名称 IDENTIFIED BY 口令 DEFAULT TABLESPACE “默认表空间名” TEMPORARY TABLESPACE “TEMP” ACCOUNT UNLOCK--一般属性

--DEFAULT TABLESPACE :默认表空间名

--TEMPORARY TABLESPACE :临时表空间名,默认TEMP--ACCOUNT :用户状态,默认UNLOCK 未锁定;LOCK 锁定 CREATE USER “TEST” PROFILE “DEFAULT” IDENTIFIED BY “test” DEFAULT TABLESPACE “TEST” TEMPORARY TABLESPACE “TEMP” ACCOUNT UNLOCK;--可以写成

CREATE USER “TEST” PROFILE “DEFAULT” IDENTIFIED BY “test” DEFAULT TABLESPACE “TEST”;/******************************************************************/--用户授权

--grant “connect,resource,dba” to “someuser” with admin option;--WITH ADMIN OPTION :管理选项--授予usertest DBA权限

grant dba to “usertest” with admin option;--取消授权

--REVOKE “RESOURCE” FROM “SCOTT”;/******************************************************************/--建表

--在usertest方案下建表,注意表名不能用关键字,否则报错ORA-00903: 表名无效

--语法:

--create table [schema.](--[default ][,]--.......--)TABLESPACE TABLESPACE_NAME;--schema:表示所属的用户名称或模式名称亦即方案--table_name:表示新建表的名称--column_name:表示字段名称

--data type:表示字段的数据类型

--default :表示字段的默认值--constraint:表示约束条件--TABLESPACE_NAME:所用表空间 CREATE TABLE “TEST”.“TEST”(“ID” NUMBER(10)DEFAULT 0 NOT NULL, “NAME” VARCHAR2(20)NOT NULL, “INFO” VARCHAR2(1000), PRIMARY KEY(“ID”))TABLESPACE “TEST”;--也可以写成

CREATE TABLE “TEST”.“TEST”(“ID” NUMBER(10)DEFAULT 0 PRIMARY KEY, “NAME” VARCHAR2(20)NOT NULL, “INFO” VARCHAR2(1000))TABLESPACE “TEST”;/******************************************************************/--插入数据--语法:

--INSERT INTO tablename(column1,column2,…)VALUES(expression1,expression2,…);

INSERT INTO “TEST”.“TEST”(“ID” ,“NAME” ,“INFO”)VALUES(1 ,'testname' ,'');--也可以写成

INSERT INTO “TEST”.“TEST” VALUES(1 ,'testname' ,'');/******************************************************************/

第五篇:Oracle大型数据库 实验五 重做日志文件、表空间管理操作

集美大学计算机工程学院实验报告

课程名称:大型数据库技术 指导教师:杨艳华

班级:计算12 姓名:

实验成绩:

上机实践日期:2014.12 上机实践时间:2学时 实验项目名称:重做日志文件、表空间管理操作 学号:20 实验项目编号:实验五 组号:

一、实验目的

1、理解重做日志文件的基本概念;

2、掌握重做日志文件组及其成员的添加、移动、删除等操作;

3、掌握归档重做日志的设置;

4、理解表空间的基本概念和分类;

5、掌握永久表空间的创建和管理操作;

6、掌握还原表空间的管理。

二、实验要求

1、完成重做日志文件组及其成员文件的管理操作;

2、完成归档重做日志的设置;

3、完成永久表空间和临时表空间的管理操作;

4、完成还原表空间的管理。

三、实验内容

(1)查看数据库当前重做日志文件组及成员的设置情况,然后,为数据库添加一组重做日志,组内包含两个成员文件,分别为redo4a.log和redo4b.log,大小分别为5MB。

1(2)为上面新添加的那组重做添加一个日志成员,命名为“redo4c-姓名简拼.log”,实现重做日志的多路存储。

(3)把数据库从非归档模式修改为归档模式,之后创造条件让数据库立即归档,并检查归档是否成功

(4)创建永久表空间

 创建一个表空间名为“TB+学号后三位+姓名简拼”  空间的大小为50M  表空间包括两个数据文件:表空间名_01.dbf(30M)和表空间名_02.dbf(20M),大小均不能自动扩展  数据文件均存放在Oracle的安装根目录下  区的分配方式为统一大小,192K  段管理采用自动方式

(5)改变上述永久表空间的可用性

 先将表空间脱机  再进行联机

(6)创建一个4K的非标准块表空间,命名为“tbf+学号后三位+姓名简拼”,数据文件存储在”oradataorcl姓名简拼”目录下,大小为(学号后三位*2)M。

(7)创建一个临时表空间

 名为“TTB+学号后三位+姓名简拼”

 包含一个数据文件:表空间名_01.dbf,大小为(学号后三位*2)M,存储在”oradataorcl姓名简拼”目录下,文件的大小可以自动扩展。 将该临时表空间设置为数据库的默认临时表空间  再将该临时表空间设置为scott用户的默认临时表空间  查询相关的数据字典验证上面的设置。

(8)查看数据库内各个表空间及其类型,以及区管理方式、分配类型和段空间管理方法、表空间的状态。

(9)删除前面创建的非标准块表空间,同时删除表空间的内容和对应的操作系统文件。

(10)创建一个还原表空间,命名为“UNDO+学号后三位+姓名简拼”,其中包含一个数据文件(存储在”oradataorcl姓名简拼”目录下,命名为“表空间名_01.dbf”),大小为200M,设置该表空间的RETENTION_GUARANTEE属性。然后,将它设置为数据库的当前表空间。

(11)为前面创建的永久表空间添加一个数据文件,命名为“表空间名_03.dbf”,该文件初始大小为50M,允许自动扩展,存储在”oradataorcl姓名简拼”目录下。

(12)将永久表空间中初始的两个文件移动到”oradataorcl姓名简拼”目录下。

(13)同时将前面创建的永久表空间和UNDO表空间内的文件进行重命名,把文件名中的“_”去掉。

三、实验小结

1、通过本次实验,我对重做日志文件组及其成员的添加、移动、删除等操作、归档重做日志的设置、表空间的基本概念和分类、永久表空间的创建和管理操作、还原表空间的管理都有了更为深入的了解和掌握;

2、切换数据库状态前,必须关闭数据库,由于没有关闭数据库,导致在数据库状态切换过程中遇到了很多问题;

3、通过本次实验,我能够完成重做日志文件组及其成员文件的管理操作、完成归档重做日志的设置、完成永久表空间和临时表空间的管理操作。

下载oracle表空间管理及操作实用案例word格式文档
下载oracle表空间管理及操作实用案例.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    Oracle表空间和数据文件的关系

    数据库的物理结构是由数据库的操作系统文件所决定, 每一个Oracle数据库是由三种类型的文件组成: 数据文件和控制文件。 数据库的文件为数据库提供真正的物理存储。 每一个Orac......

    oracle 数据文件、表空间、日志文件、控制文件数据库管理

    实验四 oracle 数据库管理 一、试验目的 掌握对数据文件、表空间、日志文件、控制文件的常用命令,作为DBA的必要准备。 二、实验内容 2.1 数据文件的管理 (1)在安装完毕之后,在I......

    第四章 管理表空间(5篇)

    第四章 管理表空间 4.1、基本表空间一、创建表空间 1.创建一个表空间 myspace CREATE TABLESPACE myspace(表名) DATAFILE 'D:apporacle11goradataorclmyspace.dbf......

    Oracle 临时表总结===范文大全

    Oracle 临时表总结 什么是临时表? 临时表只存在于某个会话或事务,不产生redo 。 临时表主要用于一些需要缓存结果的应用中。例如,在一个学生选课系统中,学生暂时的选课表信息保......

    oracle创建临时表

    Oracle数据库临时表管理心得 我们在创建数据表的时候,若没有特殊的指明,那么我们创建的表是一个永久的关系型表格,也就是说,这个表格中对应的数据,除非是我们显示的删除的话,表中......

    Oracle临时表总结

    Oracle临时表总结 临时表概念 临时表就是用来暂时保存临时数据(亦或叫中间数据)的一个数据库对象,它和普通表有些类似,然而又有很大区别。它只能存储在临时表空间,而非用户的表......

    Oracle数据库创建表空间、建立用户、授权、还原备份

    创建用户一般分四步: 第一步:创建临时表空间 第二步:创建数据表空间 第三步:创建用户并制定表空间 第四步:给用户授予权限 --Oracle创建临时表空间 如果没有指定的临时表空间,则可......

    Excel 轻松操作Oracle数据库范文

    Excel通过ADO方式连接到Oracle并操作Oracle给那些编程能力不强的人带来很大的福音,结合着Excel的数据处理与图表制作,就能很轻松地处理一些常规工作。 日常工作中需要查询各种......