实验三 Oracle数据库逻辑存储结构管理

实验三 Oracle数据库逻辑存储结构管理

一、实验目的

(1)掌握Oracle数据表空间的管理。
(2)掌握数据表空间不同状态时对数据操作的影响。

二、实验环境

Oracle 11g

三、实验内容

(1)为BOOKSALES数据库创建一个名为BOOKTBS1的永久性表空间,区采用自动拓展方式,段采用自动管理方式。

SQL> create tablespace BOOKTBS1 data'空间地址' size 50M;


①PS:如何查询自己的表空间信息(表空间绝对地址)输入 select name from v$datafile; 即可。

(2)为BOOKSALES数据库创建一个名为BOOKTBS2的永久性表空间,区采用定制分配,每次分配大小为1MB,段采用手动管理方式。

SQL> create tablespace BOOKTBS2 datafile'空间地址'size 10m extent management local uniform size 1m segment space management manual;

(3)为BOOKSALES数据库创建一个临时表空间TEMP02。

SQL> create temporary tablespace temp02 tempfile'空间地址'size 10m extent management local uniform size 5m;

(4)将BOOKSALES数据库临时表空间TEMP和TEMPO2都放入临时表空间组TEMPGROUP中。

SQL> alter tablespace temp tablespace group tempgroup; SQL> alter tablespace temp02 tablespace group tempgroup;

(5)为BOOKSALES数据库创建一个名为UNDO02的撤销表空间,并设置当前数据库的在线撤销表空间。

SQL> create undo tablespace undo02 datafile'空间地址' size 20m;

(6)为BOOKSALES数据库的表空间BOOKTBS1添加一个大小为50MB的数据文件,以改变该表空间的大小。

SQL> alter tablespace BOOKTBS1 add datafile '空间地址' size 50m;

(7)将BOOKSALES数据库的表空间BOOKTBS2的数据文件修改为可以自动扩展,每次扩展5MB,最大容量为100MB。

SQL> create undo tablespace BOOKTBS2 datafile '空间地址' size 10m autoextend on next 5m maxsize 100m;

(8)创建一个名为test的表,存储于BOOKTBS1表空间中,向表中插入一天记录。

SQL> create table test(id number primary key,name char(20)) tablespace BOOKTBS1;

(9)将BOOKSALES数据库的BOOKTBS1表空间设置为脱机状态,测试该表空间是否可以使用。

SQL> alter tablespace BOOKTBS1 offline; SQL> insert into test values(2,'s row');

(10)将BOOKSALES数据库的BOOKTBS1表空间设置为联机状态,测试该空间是否可以使用。

SQL> alter tablespace BOOKTBS1 online; SQL> insert into test values(2,'s row');

(11)将BOOKSALES数据库的BOOKTBS1表空间设置为只读状态,测试该表空间是否可以进行数据的写入操作。

SQL> alter tablespace BOOKTBS1 read only; SQL> insert into test values(3,'t row');

(12)将BOOKSALES数据库的BOOKTBS1表空间设置为读/写状态,测试该表空间是否可以进行数据的读/写操作。

SQL> alter tablespace BOOKTBS1 read write; SQL> insert into test values(3,'t row');

(13)将BOOKSALES数据库的BOOKTBS1设置为数据默认表空间,将临时表空间组TEMPGROUP设置为数据默认临时表空间。

SQL> alter database default tablespace BOOKTBS1; SQL> alter database default temporary tablespace tempgroup;

(14)分别备份BOOKSALES数据库的USERS和BOOKTBS1、BOOKTBS3三个表空间。

SQL> host copy users空间地址 其他的同上


②PS:如果输入(alter tablespace users begin bacup;)回车出现 ORA-01123:无法启动联机备份;未启用介质恢复。
解决办法步骤如下:
(①)管理员身份登录

SQL>conn / as sysdba

(②)关闭数据库实例

SQL>shutdown immediate

(③)打开数据库到mount阶段

SQL>startup mount

(④)更改数据库归档模式

SQL> alter database archivelog;

(⑤)启动数据库

SQL>alter databsae open;

(⑥)进行表空间备份

SQL> alter tablespace users begin backup;

(15)查询BOOKSALES数据库所有表空间及其状态信息。

SQL> select tablespace_name,extent_management,allocation_type,contents from dba_tablespace;

(16)查询BOOKSALES数据库所有表空间及其数据文件信息。

SQL> select tablespace_name,file_name from dba_data_files;

(17)删除BOOKSALES数据库BOOKTBS2表空间及其所有内容,同时删除操作系统上的数据文件。

SQL> drop tablespace BOOKTBS2 including contents and datafiles;

posted @ 2020-10-15 20:32  xwWilliam  阅读(140)  评论(0编辑  收藏